@ensforge/sdk 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +69 -0
  3. package/dist/ensforge.d.ts +38 -0
  4. package/dist/ensforge.d.ts.map +1 -0
  5. package/dist/ensforge.js +57 -0
  6. package/dist/ensforge.js.map +1 -0
  7. package/dist/groups/batch.d.ts +20 -0
  8. package/dist/groups/batch.d.ts.map +1 -0
  9. package/dist/groups/batch.js +20 -0
  10. package/dist/groups/batch.js.map +1 -0
  11. package/dist/groups/capabilities.d.ts +536 -0
  12. package/dist/groups/capabilities.d.ts.map +1 -0
  13. package/dist/groups/capabilities.js +24 -0
  14. package/dist/groups/capabilities.js.map +1 -0
  15. package/dist/groups/dns.d.ts +79 -0
  16. package/dist/groups/dns.d.ts.map +1 -0
  17. package/dist/groups/dns.js +20 -0
  18. package/dist/groups/dns.js.map +1 -0
  19. package/dist/groups/events.d.ts +66 -0
  20. package/dist/groups/events.d.ts.map +1 -0
  21. package/dist/groups/events.js +13 -0
  22. package/dist/groups/events.js.map +1 -0
  23. package/dist/groups/index.d.ts +15 -0
  24. package/dist/groups/migration.d.ts +175 -0
  25. package/dist/groups/migration.d.ts.map +1 -0
  26. package/dist/groups/migration.js +17 -0
  27. package/dist/groups/migration.js.map +1 -0
  28. package/dist/groups/name.d.ts +146 -0
  29. package/dist/groups/name.d.ts.map +1 -0
  30. package/dist/groups/name.js +25 -0
  31. package/dist/groups/name.js.map +1 -0
  32. package/dist/groups/ownership.d.ts +16 -0
  33. package/dist/groups/ownership.d.ts.map +1 -0
  34. package/dist/groups/ownership.js +16 -0
  35. package/dist/groups/ownership.js.map +1 -0
  36. package/dist/groups/permissions.d.ts +21 -0
  37. package/dist/groups/permissions.d.ts.map +1 -0
  38. package/dist/groups/permissions.js +21 -0
  39. package/dist/groups/permissions.js.map +1 -0
  40. package/dist/groups/records.d.ts +98 -0
  41. package/dist/groups/records.d.ts.map +1 -0
  42. package/dist/groups/records.js +37 -0
  43. package/dist/groups/records.js.map +1 -0
  44. package/dist/groups/registration.d.ts +257 -0
  45. package/dist/groups/registration.d.ts.map +1 -0
  46. package/dist/groups/registration.js +25 -0
  47. package/dist/groups/registration.js.map +1 -0
  48. package/dist/groups/resolution.d.ts +53 -0
  49. package/dist/groups/resolution.d.ts.map +1 -0
  50. package/dist/groups/resolution.js +22 -0
  51. package/dist/groups/resolution.js.map +1 -0
  52. package/dist/groups/reverse.d.ts +18 -0
  53. package/dist/groups/reverse.d.ts.map +1 -0
  54. package/dist/groups/reverse.js +15 -0
  55. package/dist/groups/reverse.js.map +1 -0
  56. package/dist/groups/subnames.d.ts +17 -0
  57. package/dist/groups/subnames.d.ts.map +1 -0
  58. package/dist/groups/subnames.js +17 -0
  59. package/dist/groups/subnames.js.map +1 -0
  60. package/dist/groups/wrapping.d.ts +17 -0
  61. package/dist/groups/wrapping.d.ts.map +1 -0
  62. package/dist/groups/wrapping.js +17 -0
  63. package/dist/groups/wrapping.js.map +1 -0
  64. package/dist/index.d.ts +20 -0
  65. package/dist/index.js +4 -0
  66. package/dist/internal/bind-action.d.ts +28 -0
  67. package/dist/internal/bind-action.d.ts.map +1 -0
  68. package/dist/internal/bind-action.js +28 -0
  69. package/dist/internal/bind-action.js.map +1 -0
  70. package/package.json +56 -0
@@ -0,0 +1,17 @@
1
+ import { BoundAction } from "../internal/bind-action.js";
2
+ import "../index.js";
3
+ import { EnsforgeConfig } from "@ensforge/core";
4
+ //#region src/groups/wrapping.d.ts
5
+ declare const makeWrappingActions: (config: EnsforgeConfig) => Readonly<{
6
+ extendSubnameExpiry: BoundAction<import("@ensforge/core").EnsWriteAction<import("@ensforge/core").ExtendSubnameExpiryParameters, import("@ensforge/core").CallExecutionResult, import("@ensforge/core").WriteError>>;
7
+ getFuses: BoundAction<import("@ensforge/core").EnsReadAction<import("@ensforge/core").WrapperReadParameters, import("@ensforge/core").GetFusesResult, import("@ensforge/core").GetCanonicalResourceError>>;
8
+ getWrapperExpiry: BoundAction<import("@ensforge/core").EnsReadAction<import("@ensforge/core").WrapperReadParameters, import("@ensforge/core").GetWrapperExpiryResult, import("@ensforge/core").GetCanonicalResourceError>>;
9
+ setChildFuses: BoundAction<import("@ensforge/core").EnsWriteAction<import("@ensforge/core").SetChildFusesParameters, import("@ensforge/core").CallExecutionResult, import("@ensforge/core").WriteError>>;
10
+ setFuses: BoundAction<import("@ensforge/core").EnsWriteAction<import("@ensforge/core").SetFusesParameters, import("@ensforge/core").CallExecutionResult, import("@ensforge/core").WriteError>>;
11
+ unwrapName: BoundAction<import("@ensforge/core").EnsWriteAction<import("@ensforge/core").UnwrapNameParameters, import("@ensforge/core").CallExecutionResult, import("@ensforge/core").WriteError>>;
12
+ wrapName: BoundAction<import("@ensforge/core").EnsAction<import("@ensforge/core").WrapNameParameters, import("@ensforge/core").WrapNameResult, import("@ensforge/core").WriteError>>;
13
+ }>;
14
+ type WrappingActions = ReturnType<typeof makeWrappingActions>;
15
+ //#endregion
16
+ export { WrappingActions, makeWrappingActions };
17
+ //# sourceMappingURL=wrapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapping.d.ts","names":[],"sources":["../../src/groups/wrapping.ts"],"mappings":";;;;cAaa,sBAAuB,QAAQ,mBAAc;uBAAd;;;;;;;;KAWhC,kBAAkB,kBAAkB"}
@@ -0,0 +1,17 @@
1
+ import { bindAction } from "../internal/bind-action.js";
2
+ import { extendSubnameExpiry, getFuses, getWrapperExpiry, setChildFuses, setFuses, unwrapName, wrapName } from "@ensforge/core";
3
+
4
+ //#region src/groups/wrapping.ts
5
+ const makeWrappingActions = (config) => Object.freeze({
6
+ extendSubnameExpiry: bindAction(config, extendSubnameExpiry),
7
+ getFuses: bindAction(config, getFuses),
8
+ getWrapperExpiry: bindAction(config, getWrapperExpiry),
9
+ setChildFuses: bindAction(config, setChildFuses),
10
+ setFuses: bindAction(config, setFuses),
11
+ unwrapName: bindAction(config, unwrapName),
12
+ wrapName: bindAction(config, wrapName)
13
+ });
14
+
15
+ //#endregion
16
+ export { makeWrappingActions };
17
+ //# sourceMappingURL=wrapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapping.js","names":[],"sources":["../../src/groups/wrapping.ts"],"sourcesContent":["import {\n extendSubnameExpiry,\n getFuses,\n getWrapperExpiry,\n setChildFuses,\n setFuses,\n unwrapName,\n wrapName,\n type EnsforgeConfig,\n} from \"@ensforge/core\";\n\nimport { bindAction } from \"../internal/bind-action.js\";\n\nexport const makeWrappingActions = (config: EnsforgeConfig) =>\n Object.freeze({\n extendSubnameExpiry: bindAction(config, extendSubnameExpiry),\n getFuses: bindAction(config, getFuses),\n getWrapperExpiry: bindAction(config, getWrapperExpiry),\n setChildFuses: bindAction(config, setChildFuses),\n setFuses: bindAction(config, setFuses),\n unwrapName: bindAction(config, unwrapName),\n wrapName: bindAction(config, wrapName),\n });\n\nexport type WrappingActions = ReturnType<typeof makeWrappingActions>;\n"],"mappings":";;;;AAaA,MAAa,uBAAuB,WAClC,OAAO,OAAO;CACZ,qBAAqB,WAAW,QAAQ,mBAAmB;CAC3D,UAAU,WAAW,QAAQ,QAAQ;CACrC,kBAAkB,WAAW,QAAQ,gBAAgB;CACrD,eAAe,WAAW,QAAQ,aAAa;CAC/C,UAAU,WAAW,QAAQ,QAAQ;CACrC,YAAY,WAAW,QAAQ,UAAU;CACzC,UAAU,WAAW,QAAQ,QAAQ;AACvC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { BatchActions } from "./groups/batch.js";
2
+ import { CapabilitiesActions } from "./groups/capabilities.js";
3
+ import { DnsActions } from "./groups/dns.js";
4
+ import { EventsActions } from "./groups/events.js";
5
+ import { MigrationActions } from "./groups/migration.js";
6
+ import { NameActions } from "./groups/name.js";
7
+ import { OwnershipActions } from "./groups/ownership.js";
8
+ import { PermissionsActions } from "./groups/permissions.js";
9
+ import { RecordsActions } from "./groups/records.js";
10
+ import { RegistrationActions } from "./groups/registration.js";
11
+ import { ResolutionActions } from "./groups/resolution.js";
12
+ import { ReverseActions } from "./groups/reverse.js";
13
+ import { SubnameActions } from "./groups/subnames.js";
14
+ import { WrappingActions } from "./groups/wrapping.js";
15
+ import "./groups/index.js";
16
+ import { Ensforge } from "./ensforge.js";
17
+ import { BoundAction, BoundGetRecordsAction, BoundReadBatch, BoundReadBatchSettled, BoundWatchEnsEvents } from "./internal/bind-action.js";
18
+ import { ConfigError, ConfigErrorCode } from "@ensforge/core";
19
+ export type * from "@ensforge/core";
20
+ export { type BatchActions, type BoundAction, type BoundGetRecordsAction, type BoundReadBatch, type BoundReadBatchSettled, type BoundWatchEnsEvents, type CapabilitiesActions, ConfigError, ConfigErrorCode, type DnsActions, Ensforge, type EventsActions, type MigrationActions, type NameActions, type OwnershipActions, type PermissionsActions, type RecordsActions, type RegistrationActions, type ResolutionActions, type ReverseActions, type SubnameActions, type WrappingActions };
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ import { Ensforge } from "./ensforge.js";
2
+ import { ConfigError, ConfigErrorCode } from "@ensforge/core";
3
+
4
+ export { ConfigError, ConfigErrorCode, Ensforge };
@@ -0,0 +1,28 @@
1
+ import { EnsEvent, EnsReadRequest, EnsforgeConfig, GetRecordsAction, GetRecordsError, GetRecordsParameters, GetRecordsResult, GetRecordsSelection, ReadBatchError, ReadBatchOptions, ReadBatchResult, ReadBatchSettledResult, RpcError, WatchEnsEventsError, WatchEnsEventsParameters } from "@ensforge/core";
2
+ import { Effect, Stream } from "effect";
3
+ //#region src/internal/bind-action.d.ts
4
+ type Callable = (...arguments_: never[]) => unknown;
5
+ type BindConfigFunction<Function_> = Function_ extends ((config: EnsforgeConfig, ...arguments_: infer Arguments) => infer Result) ? (...arguments_: Arguments) => Result : Function_;
6
+ type BoundProperties<Action> = { readonly [Key in keyof Action]: Key extends "effect" | "stream" ? BindConfigFunction<Action[Key]> : Action[Key]; };
7
+ type BoundAction<Action extends Callable> = BindConfigFunction<Action> & BoundProperties<Action>;
8
+ interface BoundGetRecordsAction {
9
+ <const Selection extends GetRecordsSelection>(parameters: GetRecordsParameters<Selection>, options?: Effect.RunOptions): Promise<GetRecordsResult<Selection>>;
10
+ readonly effect: <const Selection extends GetRecordsSelection>(parameters: GetRecordsParameters<Selection>) => Effect.Effect<GetRecordsResult<Selection>, GetRecordsError>;
11
+ readonly request: GetRecordsAction["request"];
12
+ }
13
+ type ReadRequests = Readonly<Record<string, EnsReadRequest<unknown, unknown>>>;
14
+ interface BoundReadBatch {
15
+ <const Requests extends ReadRequests>(requests: Requests, options?: ReadBatchOptions, runOptions?: Effect.RunOptions): Promise<ReadBatchResult<Requests>>;
16
+ readonly effect: <const Requests extends ReadRequests>(requests: Requests, options?: ReadBatchOptions) => Effect.Effect<ReadBatchResult<Requests>, ReadBatchError<Requests>>;
17
+ }
18
+ interface BoundReadBatchSettled {
19
+ <const Requests extends ReadRequests>(requests: Requests, options?: ReadBatchOptions, runOptions?: Effect.RunOptions): Promise<ReadBatchSettledResult<Requests>>;
20
+ readonly effect: <const Requests extends ReadRequests>(requests: Requests, options?: ReadBatchOptions) => Effect.Effect<ReadBatchSettledResult<Requests>, RpcError>;
21
+ }
22
+ interface BoundWatchEnsEvents {
23
+ (parameters: WatchEnsEventsParameters, onEvent: (event: EnsEvent) => void, onError: (error: WatchEnsEventsError) => void): Promise<() => void>;
24
+ readonly stream: (parameters: WatchEnsEventsParameters) => Stream.Stream<EnsEvent, WatchEnsEventsError>;
25
+ }
26
+ //#endregion
27
+ export { BoundAction, BoundGetRecordsAction, BoundReadBatch, BoundReadBatchSettled, BoundWatchEnsEvents };
28
+ //# sourceMappingURL=bind-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-action.d.ts","names":[],"sources":["../../src/internal/bind-action.ts"],"mappings":";;;KAuBK,eAAe;KAEf,mBAAmB,aAAa,oBACnC,QAAQ,mBACL,kBAAkB,oBACZ,cACH,YAAY,cAAc,SAC9B;KAEC,gBAAgB,sBACT,aAAa,SAAS,kCAC5B,mBAAmB,OAAO,QAC1B,OAAO;KAGD,YAAY,eAAe,YAAY,mBAAmB,UACpE,gBAAgB;UAED;SACR,kBAAkB,qBACvB,YAAY,qBAAqB,YACjC,UAAU,OAAO,aAChB,QAAQ,iBAAiB;WAEnB,eAAe,kBAAkB,qBACxC,YAAY,qBAAqB,eAC9B,OAAO,OAAO,iBAAiB,YAAY;WAEvC,SAAS;;KAGf,eAAe,SAAS,eAAe;UAE3B;SACR,iBAAiB,cACtB,UAAU,UACV,UAAU,kBACV,aAAa,OAAO,aACnB,QAAQ,gBAAgB;WAElB,eAAe,iBAAiB,cACvC,UAAU,UACV,UAAU,qBACP,OAAO,OAAO,gBAAgB,WAAW,eAAe;;UAG9C;SACR,iBAAiB,cACtB,UAAU,UACV,UAAU,kBACV,aAAa,OAAO,aACnB,QAAQ,uBAAuB;WAEzB,eAAe,iBAAiB,cACvC,UAAU,UACV,UAAU,qBACP,OAAO,OAAO,uBAAuB,WAAW;;UAGtC;GAEb,YAAY,0BACZ,UAAU,OAAO,mBACjB,UAAU,OAAO,+BAChB;WAEM,SACP,YAAY,6BACT,OAAO,OAAO,UAAU"}
@@ -0,0 +1,28 @@
1
+ //#region src/internal/bind-action.ts
2
+ function bindAction(config, action) {
3
+ const invoke = action;
4
+ const bound = (...arguments_) => Reflect.apply(invoke, void 0, [config, ...arguments_]);
5
+ for (const property of ["effect", "stream"]) {
6
+ const extension = Reflect.get(action, property);
7
+ if (typeof extension === "function") Object.defineProperty(bound, property, {
8
+ value: (...arguments_) => Reflect.apply(extension, action, [config, ...arguments_]),
9
+ enumerable: true,
10
+ configurable: false,
11
+ writable: false
12
+ });
13
+ }
14
+ for (const property of ["request", "call"]) {
15
+ const extension = Reflect.get(action, property);
16
+ if (typeof extension === "function") Object.defineProperty(bound, property, {
17
+ value: extension,
18
+ enumerable: true,
19
+ configurable: false,
20
+ writable: false
21
+ });
22
+ }
23
+ return Object.freeze(bound);
24
+ }
25
+
26
+ //#endregion
27
+ export { bindAction };
28
+ //# sourceMappingURL=bind-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-action.js","names":[],"sources":["../../src/internal/bind-action.ts"],"sourcesContent":["import type { Effect, Stream } from \"effect\";\n\nimport type {\n EnsEvent,\n EnsReadRequest,\n EnsforgeConfig,\n GetRecordsAction,\n GetRecordsError,\n GetRecordsParameters,\n GetRecordsResult,\n GetRecordsSelection,\n ReadBatch,\n ReadBatchError,\n ReadBatchOptions,\n ReadBatchResult,\n ReadBatchSettled,\n ReadBatchSettledResult,\n RpcError,\n WatchEnsEvents,\n WatchEnsEventsError,\n WatchEnsEventsParameters,\n} from \"@ensforge/core\";\n\ntype Callable = (...arguments_: never[]) => unknown;\n\ntype BindConfigFunction<Function_> = Function_ extends (\n config: EnsforgeConfig,\n ...arguments_: infer Arguments\n) => infer Result\n ? (...arguments_: Arguments) => Result\n : Function_;\n\ntype BoundProperties<Action> = {\n readonly [Key in keyof Action]: Key extends \"effect\" | \"stream\"\n ? BindConfigFunction<Action[Key]>\n : Action[Key];\n};\n\nexport type BoundAction<Action extends Callable> = BindConfigFunction<Action> &\n BoundProperties<Action>;\n\nexport interface BoundGetRecordsAction {\n <const Selection extends GetRecordsSelection>(\n parameters: GetRecordsParameters<Selection>,\n options?: Effect.RunOptions,\n ): Promise<GetRecordsResult<Selection>>;\n\n readonly effect: <const Selection extends GetRecordsSelection>(\n parameters: GetRecordsParameters<Selection>,\n ) => Effect.Effect<GetRecordsResult<Selection>, GetRecordsError>;\n\n readonly request: GetRecordsAction[\"request\"];\n}\n\ntype ReadRequests = Readonly<Record<string, EnsReadRequest<unknown, unknown>>>;\n\nexport interface BoundReadBatch {\n <const Requests extends ReadRequests>(\n requests: Requests,\n options?: ReadBatchOptions,\n runOptions?: Effect.RunOptions,\n ): Promise<ReadBatchResult<Requests>>;\n\n readonly effect: <const Requests extends ReadRequests>(\n requests: Requests,\n options?: ReadBatchOptions,\n ) => Effect.Effect<ReadBatchResult<Requests>, ReadBatchError<Requests>>;\n}\n\nexport interface BoundReadBatchSettled {\n <const Requests extends ReadRequests>(\n requests: Requests,\n options?: ReadBatchOptions,\n runOptions?: Effect.RunOptions,\n ): Promise<ReadBatchSettledResult<Requests>>;\n\n readonly effect: <const Requests extends ReadRequests>(\n requests: Requests,\n options?: ReadBatchOptions,\n ) => Effect.Effect<ReadBatchSettledResult<Requests>, RpcError>;\n}\n\nexport interface BoundWatchEnsEvents {\n (\n parameters: WatchEnsEventsParameters,\n onEvent: (event: EnsEvent) => void,\n onError: (error: WatchEnsEventsError) => void,\n ): Promise<() => void>;\n\n readonly stream: (\n parameters: WatchEnsEventsParameters,\n ) => Stream.Stream<EnsEvent, WatchEnsEventsError>;\n}\n\nexport function bindAction(config: EnsforgeConfig, action: GetRecordsAction): BoundGetRecordsAction;\nexport function bindAction(config: EnsforgeConfig, action: ReadBatch): BoundReadBatch;\nexport function bindAction(config: EnsforgeConfig, action: ReadBatchSettled): BoundReadBatchSettled;\nexport function bindAction(config: EnsforgeConfig, action: WatchEnsEvents): BoundWatchEnsEvents;\nexport function bindAction<Action extends Callable>(\n config: EnsforgeConfig,\n action: Action,\n): BoundAction<Action>;\nexport function bindAction(config: EnsforgeConfig, action: Callable): Callable {\n const invoke = action as (...arguments_: ReadonlyArray<unknown>) => unknown;\n const bound = (...arguments_: ReadonlyArray<unknown>) =>\n Reflect.apply(invoke, undefined, [config, ...arguments_]);\n\n for (const property of [\"effect\", \"stream\"] as const) {\n const extension = Reflect.get(action, property);\n if (typeof extension === \"function\") {\n Object.defineProperty(bound, property, {\n value: (...arguments_: ReadonlyArray<unknown>) =>\n Reflect.apply(extension, action, [config, ...arguments_]),\n enumerable: true,\n configurable: false,\n writable: false,\n });\n }\n }\n\n for (const property of [\"request\", \"call\"] as const) {\n const extension = Reflect.get(action, property);\n if (typeof extension === \"function\") {\n Object.defineProperty(bound, property, {\n value: extension,\n enumerable: true,\n configurable: false,\n writable: false,\n });\n }\n }\n\n return Object.freeze(bound);\n}\n"],"mappings":";AAsGA,SAAgB,WAAW,QAAwB,QAA4B;CAC7E,MAAM,SAAS;CACf,MAAM,SAAS,GAAG,eAChB,QAAQ,MAAM,QAAQ,QAAW,CAAC,QAAQ,GAAG,UAAU,CAAC;CAE1D,KAAK,MAAM,YAAY,CAAC,UAAU,QAAQ,GAAY;EACpD,MAAM,YAAY,QAAQ,IAAI,QAAQ,QAAQ;EAC9C,IAAI,OAAO,cAAc,YACvB,OAAO,eAAe,OAAO,UAAU;GACrC,QAAQ,GAAG,eACT,QAAQ,MAAM,WAAW,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;GAC1D,YAAY;GACZ,cAAc;GACd,UAAU;EACZ,CAAC;CAEL;CAEA,KAAK,MAAM,YAAY,CAAC,WAAW,MAAM,GAAY;EACnD,MAAM,YAAY,QAAQ,IAAI,QAAQ,QAAQ;EAC9C,IAAI,OAAO,cAAc,YACvB,OAAO,eAAe,OAAO,UAAU;GACrC,OAAO;GACP,YAAY;GACZ,cAAc;GACd,UAAU;EACZ,CAAC;CAEL;CAEA,OAAO,OAAO,OAAO,KAAK;AAC5B"}
package/package.json ADDED
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "@ensforge/sdk",
3
+ "version": "0.0.0",
4
+ "description": "A type-safe TypeScript SDK for ENS",
5
+ "keywords": [
6
+ "ens",
7
+ "ethereum",
8
+ "name-service",
9
+ "sdk",
10
+ "typescript",
11
+ "viem",
12
+ "wagmi",
13
+ "web3"
14
+ ],
15
+ "homepage": "https://github.com/envoy1084/ensforge#readme",
16
+ "bugs": "https://github.com/envoy1084/ensforge/issues",
17
+ "license": "Apache-2.0",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/envoy1084/ensforge.git",
21
+ "directory": "packages/sdk"
22
+ },
23
+ "files": [
24
+ "dist"
25
+ ],
26
+ "type": "module",
27
+ "sideEffects": false,
28
+ "imports": {
29
+ "#/*": "./dist/*.js"
30
+ },
31
+ "exports": {
32
+ ".": "./dist/index.js",
33
+ "./package.json": "./package.json"
34
+ },
35
+ "publishConfig": {
36
+ "access": "public",
37
+ "provenance": true
38
+ },
39
+ "dependencies": {
40
+ "@ensforge/core": "0.0.0"
41
+ },
42
+ "peerDependencies": {
43
+ "effect": "^4.0.0-rc.112",
44
+ "viem": "^2.56.0",
45
+ "wagmi": "^3.0.0"
46
+ },
47
+ "scripts": {
48
+ "build": "tsdown",
49
+ "dev": "tsdown --watch",
50
+ "lint": "oxlint --deny-warnings .",
51
+ "pack:check": "publint && attw --pack . --profile esm-only",
52
+ "test": "vitest run",
53
+ "test:watch": "vitest",
54
+ "typecheck": "tsc --noEmit"
55
+ }
56
+ }