@xyo-network/xl1-protocol-sdk 2.2.1 → 3.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 (50) hide show
  1. package/dist/neutral/CreatableProvider/AbstractCreatableProvider.d.ts +35 -2
  2. package/dist/neutral/CreatableProvider/AbstractCreatableProvider.d.ts.map +1 -1
  3. package/dist/neutral/capabilities/Capability.d.ts +1 -8
  4. package/dist/neutral/capabilities/Capability.d.ts.map +1 -1
  5. package/dist/neutral/capabilities/Provider.d.ts +14 -23
  6. package/dist/neutral/capabilities/Provider.d.ts.map +1 -1
  7. package/dist/neutral/capabilities/connectionTypes.d.ts +9 -0
  8. package/dist/neutral/capabilities/connectionTypes.d.ts.map +1 -0
  9. package/dist/neutral/capabilities/index.d.ts +1 -0
  10. package/dist/neutral/capabilities/index.d.ts.map +1 -1
  11. package/dist/neutral/capabilities/resolveProviders.d.ts +27 -20
  12. package/dist/neutral/capabilities/resolveProviders.d.ts.map +1 -1
  13. package/dist/neutral/config/Actor.d.ts +216 -12
  14. package/dist/neutral/config/Actor.d.ts.map +1 -1
  15. package/dist/neutral/config/Actors.d.ts +41 -2
  16. package/dist/neutral/config/Actors.d.ts.map +1 -1
  17. package/dist/neutral/config/Base.d.ts +41 -2
  18. package/dist/neutral/config/Base.d.ts.map +1 -1
  19. package/dist/neutral/config/Config.d.ts +152 -8
  20. package/dist/neutral/config/Config.d.ts.map +1 -1
  21. package/dist/neutral/config/HostActor.d.ts +216 -12
  22. package/dist/neutral/config/HostActor.d.ts.map +1 -1
  23. package/dist/neutral/config/ProviderBinding.d.ts +4 -5
  24. package/dist/neutral/config/ProviderBinding.d.ts.map +1 -1
  25. package/dist/neutral/config/adaptLegacyConfig.d.ts +2 -3
  26. package/dist/neutral/config/adaptLegacyConfig.d.ts.map +1 -1
  27. package/dist/neutral/config/connections/index.d.ts +6 -0
  28. package/dist/neutral/config/connections/index.d.ts.map +1 -0
  29. package/dist/neutral/config/index.d.ts +2 -0
  30. package/dist/neutral/config/index.d.ts.map +1 -1
  31. package/dist/neutral/config/normalizeConnectionsConfig.d.ts +20 -0
  32. package/dist/neutral/config/normalizeConnectionsConfig.d.ts.map +1 -0
  33. package/dist/neutral/config/transports/Transport.d.ts +18 -3
  34. package/dist/neutral/config/transports/Transport.d.ts.map +1 -1
  35. package/dist/neutral/context/Actor.d.ts +216 -12
  36. package/dist/neutral/context/Actor.d.ts.map +1 -1
  37. package/dist/neutral/context/HostActor.d.ts +216 -12
  38. package/dist/neutral/context/HostActor.d.ts.map +1 -1
  39. package/dist/neutral/getFileConfig.d.ts +70 -4
  40. package/dist/neutral/getFileConfig.d.ts.map +1 -1
  41. package/dist/neutral/getFileConfig.mjs +204 -191
  42. package/dist/neutral/getFileConfig.mjs.map +4 -4
  43. package/dist/neutral/index.mjs +570 -393
  44. package/dist/neutral/index.mjs.map +4 -4
  45. package/dist/neutral/model/CreatableProviderContext.zod.d.ts +216 -12
  46. package/dist/neutral/model/CreatableProviderContext.zod.d.ts.map +1 -1
  47. package/dist/neutral/simple/mempool/SimpleMempoolRunner.d.ts +1 -1
  48. package/dist/neutral/test/index.mjs +204 -191
  49. package/dist/neutral/test/index.mjs.map +4 -4
  50. package/package.json +6 -6
@@ -35,8 +35,39 @@ export declare abstract class AbstractCreatableProvider<TParams extends Creatabl
35
35
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
36
36
  silent: boolean;
37
37
  };
38
+ connections: Record<string, {
39
+ root: string;
40
+ type: "lmdb";
41
+ access?: "read" | "write" | undefined;
42
+ store?: string | undefined;
43
+ } | {
44
+ type: "mongo";
45
+ connectionString?: string | undefined;
46
+ database?: string | undefined;
47
+ domain?: string | undefined;
48
+ password?: string | undefined;
49
+ username?: string | undefined;
50
+ } | {
51
+ protocol: string;
52
+ url: string;
53
+ type: "rpc";
54
+ } | {
55
+ type: "rest";
56
+ baseUrl: string;
57
+ } | {
58
+ type: "s3";
59
+ bucket?: string | undefined;
60
+ prefix?: string | undefined;
61
+ readUrl?: string | undefined;
62
+ accessKeyId?: string | undefined;
63
+ accountId?: string | undefined;
64
+ secretAccessKey?: string | undefined;
65
+ } | {
66
+ type: "evm-rpc";
67
+ url: string;
68
+ }>;
38
69
  providerBindings: Record<string, {
39
- implementation?: string | undefined;
70
+ connection?: string | undefined;
40
71
  transport?: string | undefined;
41
72
  }>;
42
73
  providers: {
@@ -55,8 +86,10 @@ export declare abstract class AbstractCreatableProvider<TParams extends Creatabl
55
86
  } | undefined;
56
87
  };
57
88
  transports: Record<string, {
58
- type: "lmdb";
59
89
  root: string;
90
+ type: "lmdb";
91
+ access?: "read" | "write" | undefined;
92
+ store?: string | undefined;
60
93
  } | {
61
94
  type: "mongo";
62
95
  connectionString?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractCreatableProvider.d.ts","sourceRoot":"","sources":["../../../src/CreatableProvider/AbstractCreatableProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EACL,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE9E,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAAE,yBAAyB,EAAE,uBAAuB,EAC9E,WAAW,EACZ,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,iEAAiE;AACjE,8BAAsB,yBAAyB,CAAC,OAAO,SAAS,uBAAuB,GAAG,uBAAuB,EAC/G,UAAU,SAAS,0BAA0B,GAAG,0BAA0B,CAAE,SAAQ,iBAAiB,CAAC,OAAO,EAAE,UAAU,CACzH,YAAW,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC;IACrD,YAAY,EAAE,WAAW,CAAK;IAE9B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;IACvD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;IAE5C,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IAE1C,IAAa,MAAM,uBAOlB;IAED,IAAa,KAAK,mDAEjB;IAED,IAAa,MAAM,oDAElB;IAED,SAAS,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEnB;IAED,SAAS,KAAK,OAAO,uDAEpB;IAED,SAAS,KAAK,OAAO,qIAEpB;IAED,MAAM,CAAC,OAAO,CAAC,SAAS,SAAS,yBAAyB,EAAE,aAAa,SAAS,eAAe,EAAE,GAAG,eAAe,EAAE,EACrH,IAAI,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAClC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;WAMxB,aAAa,CAAC,CAAC,SAAS,yBAAyB,EACrE,MAAM,GAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAM;IAgBpB,aAAa;IAUtB,eAAe,CAAC,SAAS,SAAS,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;IAI1F,kBAAkB,CAAC,SAAS,SAAS,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;CAGpG"}
1
+ {"version":3,"file":"AbstractCreatableProvider.d.ts","sourceRoot":"","sources":["../../../src/CreatableProvider/AbstractCreatableProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EACL,iBAAiB,EAClB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE9E,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAAE,yBAAyB,EAAE,uBAAuB,EAC9E,WAAW,EACZ,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,iEAAiE;AACjE,8BAAsB,yBAAyB,CAAC,OAAO,SAAS,uBAAuB,GAAG,uBAAuB,EAC/G,UAAU,SAAS,0BAA0B,GAAG,0BAA0B,CAAE,SAAQ,iBAAiB,CAAC,OAAO,EAAE,UAAU,CACzH,YAAW,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAC;IACrD,YAAY,EAAE,WAAW,CAAK;IAE9B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAAA;IACvD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;IAE5C,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IAE1C,IAAa,MAAM,uBAOlB;IAED,IAAa,KAAK,mDAEjB;IAED,IAAa,MAAM,oDAElB;IAED,SAAS,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEnB;IAED,SAAS,KAAK,OAAO,uDAEpB;IAED,SAAS,KAAK,OAAO,qIAEpB;IAED,MAAM,CAAC,OAAO,CAAC,SAAS,SAAS,yBAAyB,EAAE,aAAa,SAAS,eAAe,EAAE,GAAG,eAAe,EAAE,EACrH,IAAI,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAClC,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;WAMxB,aAAa,CAAC,CAAC,SAAS,yBAAyB,EACrE,MAAM,GAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAM;IAgBpB,aAAa;IAUtB,eAAe,CAAC,SAAS,SAAS,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;IAI1F,kBAAkB,CAAC,SAAS,SAAS,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC;CAGpG"}
@@ -5,18 +5,11 @@ import type { Surface } from './Backing.ts';
5
5
  *
6
6
  * The capability registry is a sidecar to the moniker namespace — every
7
7
  * moniker that an actor consumes should have a corresponding `Capability`
8
- * entry. The registry is what lets the resolver walk transitive needs
9
- * (via `implies`) and produce useful diagnostics.
8
+ * entry. Plan-time transitive closure uses `ProviderDescriptor.dependencies`.
10
9
  */
11
10
  export interface Capability {
12
11
  /** Canonical id — equals the existing moniker constant string. */
13
12
  readonly id: ProviderMoniker;
14
- /**
15
- * Other capabilities a consumer of this one transitively requires.
16
- * Drives plan-time prerequisite walking — e.g. `BlockRunner` requires
17
- * `BlockViewer`, `MempoolRunner`, `MempoolViewer`, etc.
18
- */
19
- readonly implies?: readonly ProviderMoniker[];
20
13
  readonly kind: 'viewer' | 'runner' | 'gateway' | 'archivist' | 'signer';
21
14
  /** Human label for diagnostics. */
22
15
  readonly label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Capability.d.ts","sourceRoot":"","sources":["../../../src/capabilities/Capability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAA;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;IAC7C,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;IACvE,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC,GAAG,CAAC,EAAE,EAAE,eAAe,GAAG,UAAU,CAAA;IACpC,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAAA;IAC/B,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;IACzD,MAAM,CAAC,EAAE,EAAE,eAAe,GAAG,UAAU,GAAG,SAAS,CAAA;CACpD;AAiCD,wBAAgB,wBAAwB,IAAI,0BAA0B,CAErE"}
1
+ {"version":3,"file":"Capability.d.ts","sourceRoot":"","sources":["../../../src/capabilities/Capability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;IACvE,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC,GAAG,CAAC,EAAE,EAAE,eAAe,GAAG,UAAU,CAAA;IACpC,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAAA;IAC/B,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;IACzD,MAAM,CAAC,EAAE,EAAE,eAAe,GAAG,UAAU,GAAG,SAAS,CAAA;CACpD;AAiCD,wBAAgB,wBAAwB,IAAI,0BAA0B,CAErE"}
@@ -1,20 +1,12 @@
1
1
  import type { ProviderMoniker } from '@xyo-network/xl1-protocol-model';
2
+ import type { TransportKind } from '../config/transports/Transport.ts';
2
3
  import type { CreatableProviderFactory } from '../CreatableProvider/index.ts';
3
- import type { BackingNeed, Surface } from './Backing.ts';
4
+ import type { Surface } from './Backing.ts';
4
5
  import type { CapabilityRegistryInstance } from './Capability.ts';
5
- /**
6
- * Tier expresses *intrinsic strength* of a provider — lower numbers win.
7
- *
8
- * - `1` — In-process, direct backing-store access (Simple* providers reading/writing the local archivist).
9
- * - `2` — Direct EVM contract access (Evm* providers calling Ethereum nodes for chain-of-truth data).
10
- * - `3` — Remote JSON-RPC to another XL1 node (JsonRpc* providers).
11
- * - `4` — Stub/fallback (Simple* providers fed empty arrays — usable only when nothing better exists).
12
- */
13
- export type ProviderTier = 1 | 2 | 3 | 4;
14
6
  /**
15
7
  * Sidecar metadata for a `CreatableProviderFactory`-producing class. Tells the
16
- * resolver which capability the provider satisfies, at what tier, under what
17
- * preconditions, and how to construct the factory at plan time.
8
+ * resolver which capability the provider satisfies, which connections it can use,
9
+ * and how to construct the factory at plan time.
18
10
  *
19
11
  * Descriptors are deliberately separated from the provider classes themselves
20
12
  * so the SDK packages stay un-coupled to the descriptor system — descriptors
@@ -22,16 +14,17 @@ export type ProviderTier = 1 | 2 | 3 | 4;
22
14
  */
23
15
  export interface ProviderDescriptor<TCtx extends ResolutionContext = ResolutionContext> {
24
16
  /**
25
- * The backing resources this descriptor's `build()` reads from `ctx`. Used
26
- * by the resolver to filter out descriptors whose backings are not a subset
27
- * of the locator's `availableBackings`. Empty array means the descriptor
28
- * has no backing needs (pure stateless factory or function-only viewer).
17
+ * Connection kinds this descriptor can use (e.g. `lmdb`, `rpc`). Empty array
18
+ * means wildcard matches any bound connection type.
19
+ */
20
+ readonly connectionTypes: readonly TransportKind[];
21
+ /**
22
+ * Monikers this provider resolves at register/create time. Drives plan-time
23
+ * transitive closure and topological ordering.
29
24
  */
30
- readonly backings: readonly BackingNeed[];
25
+ readonly dependencies?: readonly ProviderMoniker[];
31
26
  /** Globally-unique key, usually `<className>` — used in snapshots and diagnostics. */
32
27
  readonly id: string;
33
- /** Soft tie-break inside a tier; higher wins. Default 0. */
34
- readonly priority?: number;
35
28
  /** Capabilities this provider satisfies (typically one moniker, occasionally several). */
36
29
  readonly satisfies: readonly ProviderMoniker[];
37
30
  /**
@@ -40,7 +33,6 @@ export interface ProviderDescriptor<TCtx extends ResolutionContext = ResolutionC
40
33
  * the resolver can filter candidates by surface without a registry lookup.
41
34
  */
42
35
  readonly surface: Surface;
43
- readonly tier: ProviderTier;
44
36
  /**
45
37
  * Build the factory args from the resolution context. Returning undefined
46
38
  * signals "skip me at runtime" (preconditions said yes, but a missing optional
@@ -55,9 +47,8 @@ export interface ProviderDescriptor<TCtx extends ResolutionContext = ResolutionC
55
47
  }
56
48
  /**
57
49
  * Inputs the resolver hands to descriptors. `capabilities` is the registry
58
- * the resolver consults for `implies` walks. Subtypes may extend this with
59
- * live runtime resources archivists, EVM provider, wallet — that descriptors
60
- * need at `build()` time.
50
+ * the resolver may consult for diagnostics. Subtypes may extend this with
51
+ * live runtime resources that descriptors need at `build()` time.
61
52
  */
62
53
  export interface ResolutionContext {
63
54
  readonly capabilities: CapabilityRegistryInstance;
@@ -1 +1 @@
1
- {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../src/capabilities/Provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAEjE;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAExC;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB,CAAC,IAAI,SAAS,iBAAiB,GAAG,iBAAiB;IACpF;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAA;IACzC,sFAAsF;IACtF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAA;IAC9C;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,wBAAwB,GAAG,SAAS,CAAA;IACtD;;;OAGG;IACH,aAAa,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAA;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,YAAY,EAAE,0BAA0B,CAAA;CAClD"}
1
+ {"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../../src/capabilities/Provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAEjE;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB,CAAC,IAAI,SAAS,iBAAiB,GAAG,iBAAiB;IACpF;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,SAAS,aAAa,EAAE,CAAA;IAClD;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;IAClD,sFAAsF;IACtF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,0FAA0F;IAC1F,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAA;IAC9C;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB;;;;OAIG;IACH,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,wBAAwB,GAAG,SAAS,CAAA;IACtD;;;OAGG;IACH,aAAa,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAA;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,YAAY,EAAE,0BAA0B,CAAA;CAClD"}
@@ -0,0 +1,9 @@
1
+ import type { TransportKind } from '../config/transports/Transport.ts';
2
+ import type { ProviderDescriptor } from './Provider.ts';
3
+ /**
4
+ * Connection types a descriptor supports. An empty array is a wildcard: the
5
+ * descriptor matches any bound connection type (used by in-process memory stubs).
6
+ */
7
+ export declare function descriptorConnectionTypes(descriptor: Pick<ProviderDescriptor, 'connectionTypes'>): readonly TransportKind[];
8
+ export declare function descriptorMatchesConnectionType(descriptor: Pick<ProviderDescriptor, 'connectionTypes'>, connectionType: TransportKind): boolean;
9
+ //# sourceMappingURL=connectionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionTypes.d.ts","sourceRoot":"","sources":["../../../src/capabilities/connectionTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAEvD;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,GACtD,SAAS,aAAa,EAAE,CAE1B;AAED,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,EACvD,cAAc,EAAE,aAAa,GAC5B,OAAO,CAMT"}
@@ -1,6 +1,7 @@
1
1
  export * from './Backing.ts';
2
2
  export * from './Capability.ts';
3
3
  export * from './connectionSubsetBySurface.ts';
4
+ export * from './connectionTypes.ts';
4
5
  export * from './factoryBrand.ts';
5
6
  export * from './Provider.ts';
6
7
  export * from './resolveProviders.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/capabilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/capabilities/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { ProviderMoniker } from '@xyo-network/xl1-protocol-model';
2
- import type { BackingNeed } from './Backing.ts';
2
+ import type { TransportConfig } from '../config/transports/Transport.ts';
3
3
  import type { ProviderDescriptor, ResolutionContext } from './Provider.ts';
4
4
  export interface ResolutionPlan {
5
5
  /** Capability moniker -> winning descriptor id (for snapshot diffing). */
@@ -18,30 +18,37 @@ export declare class MissingCapabilityError extends Error {
18
18
  readonly reasons: readonly string[];
19
19
  constructor(moniker: ProviderMoniker, reasons: readonly string[]);
20
20
  }
21
+ export declare class AmbiguousProviderError extends Error {
22
+ readonly candidates: readonly string[];
23
+ readonly moniker: ProviderMoniker;
24
+ constructor(moniker: ProviderMoniker, candidates: readonly ProviderDescriptor[]);
25
+ }
26
+ export declare class UnboundProviderError extends Error {
27
+ readonly moniker: ProviderMoniker;
28
+ constructor(moniker: ProviderMoniker);
29
+ }
30
+ export declare class UnknownConnectionError extends Error {
31
+ readonly connectionName: string;
32
+ readonly moniker: ProviderMoniker;
33
+ constructor(moniker: ProviderMoniker, connectionName: string);
34
+ }
35
+ interface ProviderBindingLike {
36
+ connection?: string;
37
+ transport?: string;
38
+ }
21
39
  export interface ResolveProvidersOptions {
22
- /**
23
- * The backings the locator's process holds. If provided, the resolver filters
24
- * out any candidate whose `backings` are not a subset of `availableBackings`
25
- * (with mode compatibility — `read` is satisfied by either `read` or `write`;
26
- * `write` requires `write`). If omitted, no backing-based filtering happens.
27
- */
28
- readonly availableBackings?: readonly BackingNeed[];
29
- /**
30
- * Pin specific monikers to a descriptor id (`ProviderDescriptor.id`). When
31
- * set, only the named implementation is considered for that moniker; tier
32
- * selection is skipped.
33
- */
34
- readonly implementations?: Readonly<Partial<Record<ProviderMoniker, string>>>;
40
+ readonly connections?: Readonly<Record<string, TransportConfig>>;
41
+ readonly providerBindings?: Readonly<Partial<Record<ProviderMoniker, ProviderBindingLike>>>;
35
42
  }
36
43
  /**
37
44
  * Plans which providers to register for a given set of needs.
38
45
  *
39
- * 1. Walk `Capability.implies` from the needs set to fixed point.
40
- * 2. Filter candidates by backing requirements (if `availableBackings` provided).
41
- * 3. Filter remaining candidates by `preconditions(ctx)`.
42
- * 4. Pick the head of `(tier asc, priority desc, descriptor.id asc)` per moniker.
43
- * 5. Toposort selected descriptors using the registry's `implies`.
44
- * 6. Throw `MissingCapabilityError` if any wanted moniker has zero survivors.
46
+ * 1. Fixpoint-expand monikers from selected descriptor `dependencies`.
47
+ * 2. Require `providerBindings[moniker].connection` for every moniker.
48
+ * 3. Filter candidates by bound connection type and `preconditions(ctx)`.
49
+ * 4. Throw when zero or multiple candidates remain.
50
+ * 5. Toposort selected descriptors using `dependencies`.
45
51
  */
46
52
  export declare function resolveProviders<TCtx extends ResolutionContext>(needs: ReadonlySet<ProviderMoniker>, candidates: readonly ProviderDescriptor<TCtx>[], ctx: TCtx, options?: ResolveProvidersOptions): ResolutionPlan;
53
+ export {};
47
54
  //# sourceMappingURL=resolveProviders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolveProviders.d.ts","sourceRoot":"","sources":["../../../src/capabilities/resolveProviders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAE1E,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA;IAC5D,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAChD,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAA;CACjD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAA;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;gBAEvB,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE;CAOjE;AAED,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IACnD;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;CAC9E;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAS,iBAAiB,EAC7D,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,EACnC,UAAU,EAAE,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAC/C,GAAG,EAAE,IAAI,EACT,OAAO,GAAE,uBAA4B,GACpC,cAAc,CAWhB"}
1
+ {"version":3,"file":"resolveProviders.d.ts","sourceRoot":"","sources":["../../../src/capabilities/resolveProviders.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,mCAAmC,CAAA;AAEvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAE1E,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA;IAC5D,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAChD,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAA;CACjD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAA;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;gBAEvB,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE;CAOjE;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;gBAErB,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,kBAAkB,EAAE;CAShF;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;gBAErB,OAAO,EAAE,eAAe;CAKrC;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;gBAErB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM;CAQ7D;AAED,UAAU,mBAAmB;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;IAChE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAA;CAC5F;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAS,iBAAiB,EAC7D,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,EACnC,UAAU,EAAE,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAC/C,GAAG,EAAE,IAAI,EACT,OAAO,GAAE,uBAA4B,GACpC,cAAc,CAwBhB"}
@@ -42,8 +42,42 @@ export declare const ActorConfigZod: z.ZodMiniObject<{
42
42
  }>>;
43
43
  silent: import("zod").ZodDefault<import("zod").ZodBoolean>;
44
44
  }, z.core.$strip>>;
45
+ connections: z.ZodMiniDefault<import("zod").ZodDefault<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
46
+ access: import("zod").ZodOptional<import("zod").ZodEnum<{
47
+ read: "read";
48
+ write: "write";
49
+ }>>;
50
+ root: import("zod").ZodString;
51
+ store: import("zod").ZodOptional<import("zod").ZodString>;
52
+ type: import("zod").ZodLiteral<"lmdb">;
53
+ }, z.core.$strip>, import("zod").ZodObject<{
54
+ type: import("zod").ZodLiteral<"mongo">;
55
+ connectionString: import("zod").ZodOptional<import("zod").ZodString>;
56
+ database: import("zod").ZodOptional<import("zod").ZodString>;
57
+ domain: import("zod").ZodOptional<import("zod").ZodString>;
58
+ password: import("zod").ZodOptional<import("zod").ZodString>;
59
+ username: import("zod").ZodOptional<import("zod").ZodString>;
60
+ }, z.core.$strip>, import("zod").ZodObject<{
61
+ protocol: import("zod").ZodDefault<import("zod").ZodString>;
62
+ url: import("zod").ZodString;
63
+ type: import("zod").ZodLiteral<"rpc">;
64
+ }, z.core.$strip>, import("zod").ZodObject<{
65
+ type: import("zod").ZodLiteral<"rest">;
66
+ baseUrl: import("zod").ZodString;
67
+ }, z.core.$strip>, import("zod").ZodObject<{
68
+ bucket: import("zod").ZodOptional<import("zod").ZodString>;
69
+ prefix: import("zod").ZodOptional<import("zod").ZodString>;
70
+ readUrl: import("zod").ZodOptional<import("zod").ZodString>;
71
+ type: import("zod").ZodLiteral<"s3">;
72
+ accessKeyId: import("zod").ZodOptional<import("zod").ZodString>;
73
+ accountId: import("zod").ZodOptional<import("zod").ZodString>;
74
+ secretAccessKey: import("zod").ZodOptional<import("zod").ZodString>;
75
+ }, z.core.$strip>, import("zod").ZodObject<{
76
+ type: import("zod").ZodLiteral<"evm-rpc">;
77
+ url: import("zod").ZodString;
78
+ }, z.core.$strip>], "type">>>>;
45
79
  providerBindings: z.ZodMiniDefault<import("zod").ZodDefault<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodObject<{
46
- implementation: import("zod").ZodOptional<import("zod").ZodString>;
80
+ connection: import("zod").ZodOptional<import("zod").ZodString>;
47
81
  transport: import("zod").ZodOptional<import("zod").ZodString>;
48
82
  }, z.core.$strip>>>>;
49
83
  providers: z.ZodMiniDefault<import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodObject<{
@@ -61,8 +95,13 @@ export declare const ActorConfigZod: z.ZodMiniObject<{
61
95
  }, z.core.$strip>]>>;
62
96
  }, z.core.$strip>>;
63
97
  transports: z.ZodMiniDefault<import("zod").ZodDefault<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
64
- type: import("zod").ZodLiteral<"lmdb">;
98
+ access: import("zod").ZodOptional<import("zod").ZodEnum<{
99
+ read: "read";
100
+ write: "write";
101
+ }>>;
65
102
  root: import("zod").ZodString;
103
+ store: import("zod").ZodOptional<import("zod").ZodString>;
104
+ type: import("zod").ZodLiteral<"lmdb">;
66
105
  }, z.core.$strip>, import("zod").ZodObject<{
67
106
  type: import("zod").ZodLiteral<"mongo">;
68
107
  connectionString: import("zod").ZodOptional<import("zod").ZodString>;
@@ -183,8 +222,39 @@ export declare const isActorConfig: <T>(value: T) => value is T & {
183
222
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
184
223
  silent: boolean;
185
224
  };
225
+ connections: Record<string, {
226
+ root: string;
227
+ type: "lmdb";
228
+ access?: "read" | "write" | undefined;
229
+ store?: string | undefined;
230
+ } | {
231
+ type: "mongo";
232
+ connectionString?: string | undefined;
233
+ database?: string | undefined;
234
+ domain?: string | undefined;
235
+ password?: string | undefined;
236
+ username?: string | undefined;
237
+ } | {
238
+ protocol: string;
239
+ url: string;
240
+ type: "rpc";
241
+ } | {
242
+ type: "rest";
243
+ baseUrl: string;
244
+ } | {
245
+ type: "s3";
246
+ bucket?: string | undefined;
247
+ prefix?: string | undefined;
248
+ readUrl?: string | undefined;
249
+ accessKeyId?: string | undefined;
250
+ accountId?: string | undefined;
251
+ secretAccessKey?: string | undefined;
252
+ } | {
253
+ type: "evm-rpc";
254
+ url: string;
255
+ }>;
186
256
  providerBindings: Record<string, {
187
- implementation?: string | undefined;
257
+ connection?: string | undefined;
188
258
  transport?: string | undefined;
189
259
  }>;
190
260
  providers: {
@@ -203,8 +273,10 @@ export declare const isActorConfig: <T>(value: T) => value is T & {
203
273
  } | undefined;
204
274
  };
205
275
  transports: Record<string, {
206
- type: "lmdb";
207
276
  root: string;
277
+ type: "lmdb";
278
+ access?: "read" | "write" | undefined;
279
+ store?: string | undefined;
208
280
  } | {
209
281
  type: "mongo";
210
282
  connectionString?: string | undefined;
@@ -325,8 +397,39 @@ export declare const asActorConfig: {
325
397
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
326
398
  silent: boolean;
327
399
  };
400
+ connections: Record<string, {
401
+ root: string;
402
+ type: "lmdb";
403
+ access?: "read" | "write" | undefined;
404
+ store?: string | undefined;
405
+ } | {
406
+ type: "mongo";
407
+ connectionString?: string | undefined;
408
+ database?: string | undefined;
409
+ domain?: string | undefined;
410
+ password?: string | undefined;
411
+ username?: string | undefined;
412
+ } | {
413
+ protocol: string;
414
+ url: string;
415
+ type: "rpc";
416
+ } | {
417
+ type: "rest";
418
+ baseUrl: string;
419
+ } | {
420
+ type: "s3";
421
+ bucket?: string | undefined;
422
+ prefix?: string | undefined;
423
+ readUrl?: string | undefined;
424
+ accessKeyId?: string | undefined;
425
+ accountId?: string | undefined;
426
+ secretAccessKey?: string | undefined;
427
+ } | {
428
+ type: "evm-rpc";
429
+ url: string;
430
+ }>;
328
431
  providerBindings: Record<string, {
329
- implementation?: string | undefined;
432
+ connection?: string | undefined;
330
433
  transport?: string | undefined;
331
434
  }>;
332
435
  providers: {
@@ -345,8 +448,10 @@ export declare const asActorConfig: {
345
448
  } | undefined;
346
449
  };
347
450
  transports: Record<string, {
348
- type: "lmdb";
349
451
  root: string;
452
+ type: "lmdb";
453
+ access?: "read" | "write" | undefined;
454
+ store?: string | undefined;
350
455
  } | {
351
456
  type: "mongo";
352
457
  connectionString?: string | undefined;
@@ -465,8 +570,39 @@ export declare const asActorConfig: {
465
570
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
466
571
  silent: boolean;
467
572
  };
573
+ connections: Record<string, {
574
+ root: string;
575
+ type: "lmdb";
576
+ access?: "read" | "write" | undefined;
577
+ store?: string | undefined;
578
+ } | {
579
+ type: "mongo";
580
+ connectionString?: string | undefined;
581
+ database?: string | undefined;
582
+ domain?: string | undefined;
583
+ password?: string | undefined;
584
+ username?: string | undefined;
585
+ } | {
586
+ protocol: string;
587
+ url: string;
588
+ type: "rpc";
589
+ } | {
590
+ type: "rest";
591
+ baseUrl: string;
592
+ } | {
593
+ type: "s3";
594
+ bucket?: string | undefined;
595
+ prefix?: string | undefined;
596
+ readUrl?: string | undefined;
597
+ accessKeyId?: string | undefined;
598
+ accountId?: string | undefined;
599
+ secretAccessKey?: string | undefined;
600
+ } | {
601
+ type: "evm-rpc";
602
+ url: string;
603
+ }>;
468
604
  providerBindings: Record<string, {
469
- implementation?: string | undefined;
605
+ connection?: string | undefined;
470
606
  transport?: string | undefined;
471
607
  }>;
472
608
  providers: {
@@ -485,8 +621,10 @@ export declare const asActorConfig: {
485
621
  } | undefined;
486
622
  };
487
623
  transports: Record<string, {
488
- type: "lmdb";
489
624
  root: string;
625
+ type: "lmdb";
626
+ access?: "read" | "write" | undefined;
627
+ store?: string | undefined;
490
628
  } | {
491
629
  type: "mongo";
492
630
  connectionString?: string | undefined;
@@ -608,8 +746,39 @@ export declare const toActorConfig: {
608
746
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
609
747
  silent: boolean;
610
748
  };
749
+ connections: Record<string, {
750
+ root: string;
751
+ type: "lmdb";
752
+ access?: "read" | "write" | undefined;
753
+ store?: string | undefined;
754
+ } | {
755
+ type: "mongo";
756
+ connectionString?: string | undefined;
757
+ database?: string | undefined;
758
+ domain?: string | undefined;
759
+ password?: string | undefined;
760
+ username?: string | undefined;
761
+ } | {
762
+ protocol: string;
763
+ url: string;
764
+ type: "rpc";
765
+ } | {
766
+ type: "rest";
767
+ baseUrl: string;
768
+ } | {
769
+ type: "s3";
770
+ bucket?: string | undefined;
771
+ prefix?: string | undefined;
772
+ readUrl?: string | undefined;
773
+ accessKeyId?: string | undefined;
774
+ accountId?: string | undefined;
775
+ secretAccessKey?: string | undefined;
776
+ } | {
777
+ type: "evm-rpc";
778
+ url: string;
779
+ }>;
611
780
  providerBindings: Record<string, {
612
- implementation?: string | undefined;
781
+ connection?: string | undefined;
613
782
  transport?: string | undefined;
614
783
  }>;
615
784
  providers: {
@@ -628,8 +797,10 @@ export declare const toActorConfig: {
628
797
  } | undefined;
629
798
  };
630
799
  transports: Record<string, {
631
- type: "lmdb";
632
800
  root: string;
801
+ type: "lmdb";
802
+ access?: "read" | "write" | undefined;
803
+ store?: string | undefined;
633
804
  } | {
634
805
  type: "mongo";
635
806
  connectionString?: string | undefined;
@@ -748,8 +919,39 @@ export declare const toActorConfig: {
748
919
  logLevel: "error" | "warn" | "info" | "log" | "debug" | "trace";
749
920
  silent: boolean;
750
921
  };
922
+ connections: Record<string, {
923
+ root: string;
924
+ type: "lmdb";
925
+ access?: "read" | "write" | undefined;
926
+ store?: string | undefined;
927
+ } | {
928
+ type: "mongo";
929
+ connectionString?: string | undefined;
930
+ database?: string | undefined;
931
+ domain?: string | undefined;
932
+ password?: string | undefined;
933
+ username?: string | undefined;
934
+ } | {
935
+ protocol: string;
936
+ url: string;
937
+ type: "rpc";
938
+ } | {
939
+ type: "rest";
940
+ baseUrl: string;
941
+ } | {
942
+ type: "s3";
943
+ bucket?: string | undefined;
944
+ prefix?: string | undefined;
945
+ readUrl?: string | undefined;
946
+ accessKeyId?: string | undefined;
947
+ accountId?: string | undefined;
948
+ secretAccessKey?: string | undefined;
949
+ } | {
950
+ type: "evm-rpc";
951
+ url: string;
952
+ }>;
751
953
  providerBindings: Record<string, {
752
- implementation?: string | undefined;
954
+ connection?: string | undefined;
753
955
  transport?: string | undefined;
754
956
  }>;
755
957
  providers: {
@@ -768,8 +970,10 @@ export declare const toActorConfig: {
768
970
  } | undefined;
769
971
  };
770
972
  transports: Record<string, {
771
- type: "lmdb";
772
973
  root: string;
974
+ type: "lmdb";
975
+ access?: "read" | "write" | undefined;
976
+ store?: string | undefined;
773
977
  } | {
774
978
  type: "mongo";
775
979
  connectionString?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Actor.d.ts","sourceRoot":"","sources":["../../../src/config/Actor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,CAAC,EAAE,MAAM,UAAU,CAAA;AAI5C;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,yBAGzB,CAAA;AAEF,+BAA+B;AAC/B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOzB,CAAA;AAEF,wBAAwB;AACxB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AAExD,gEAAgE;AAChE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA+B,CAAA;AACzD,4DAA4D;AAC5D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgD,CAAA;AAC1E,8BAA8B;AAC9B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgD,CAAA"}
1
+ {"version":3,"file":"Actor.d.ts","sourceRoot":"","sources":["../../../src/config/Actor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,CAAC,EAAE,MAAM,UAAU,CAAA;AAI5C;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,yBAGzB,CAAA;AAEF,+BAA+B;AAC/B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOzB,CAAA;AAEF,wBAAwB;AACxB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AAExD,gEAAgE;AAChE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA+B,CAAA;AACzD,4DAA4D;AAC5D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgD,CAAA;AAC1E,8BAA8B;AAC9B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgD,CAAA"}