@vedmalex/ai-connect 0.2.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 (69) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1266 -0
  3. package/dist/browser/index.js +6690 -0
  4. package/dist/browser/index.js.map +7 -0
  5. package/dist/bun/index.js +10073 -0
  6. package/dist/bun/index.js.map +7 -0
  7. package/dist/bun/local.js +9753 -0
  8. package/dist/bun/local.js.map +7 -0
  9. package/dist/node/index.js +10073 -0
  10. package/dist/node/index.js.map +7 -0
  11. package/dist/node/local.js +9753 -0
  12. package/dist/node/local.js.map +7 -0
  13. package/dist/types/acp-presets.d.ts +2 -0
  14. package/dist/types/acp-presets.d.ts.map +1 -0
  15. package/dist/types/acp.d.ts +39 -0
  16. package/dist/types/acp.d.ts.map +1 -0
  17. package/dist/types/browser.d.ts +5 -0
  18. package/dist/types/browser.d.ts.map +1 -0
  19. package/dist/types/bun.d.ts +2 -0
  20. package/dist/types/bun.d.ts.map +1 -0
  21. package/dist/types/catalog.d.ts +33 -0
  22. package/dist/types/catalog.d.ts.map +1 -0
  23. package/dist/types/cli-presets.d.ts +12 -0
  24. package/dist/types/cli-presets.d.ts.map +1 -0
  25. package/dist/types/cli.d.ts +20 -0
  26. package/dist/types/cli.d.ts.map +1 -0
  27. package/dist/types/client.d.ts +3 -0
  28. package/dist/types/client.d.ts.map +1 -0
  29. package/dist/types/config.d.ts +30 -0
  30. package/dist/types/config.d.ts.map +1 -0
  31. package/dist/types/default-handlers.d.ts +5 -0
  32. package/dist/types/default-handlers.d.ts.map +1 -0
  33. package/dist/types/errors.d.ts +15 -0
  34. package/dist/types/errors.d.ts.map +1 -0
  35. package/dist/types/fanout.d.ts +20 -0
  36. package/dist/types/fanout.d.ts.map +1 -0
  37. package/dist/types/files.d.ts +42 -0
  38. package/dist/types/files.d.ts.map +1 -0
  39. package/dist/types/image.d.ts +40 -0
  40. package/dist/types/image.d.ts.map +1 -0
  41. package/dist/types/index.browser.d.ts +18 -0
  42. package/dist/types/index.browser.d.ts.map +1 -0
  43. package/dist/types/index.d.ts +19 -0
  44. package/dist/types/index.d.ts.map +1 -0
  45. package/dist/types/local-handlers.d.ts +12 -0
  46. package/dist/types/local-handlers.d.ts.map +1 -0
  47. package/dist/types/local.d.ts +6 -0
  48. package/dist/types/local.d.ts.map +1 -0
  49. package/dist/types/logging.d.ts +8 -0
  50. package/dist/types/logging.d.ts.map +1 -0
  51. package/dist/types/mock-gateway.d.ts +97 -0
  52. package/dist/types/mock-gateway.d.ts.map +1 -0
  53. package/dist/types/model-reference.d.ts +85 -0
  54. package/dist/types/model-reference.d.ts.map +1 -0
  55. package/dist/types/node.d.ts +2 -0
  56. package/dist/types/node.d.ts.map +1 -0
  57. package/dist/types/probe.d.ts +71 -0
  58. package/dist/types/probe.d.ts.map +1 -0
  59. package/dist/types/router.d.ts +41 -0
  60. package/dist/types/router.d.ts.map +1 -0
  61. package/dist/types/runtime.d.ts +6 -0
  62. package/dist/types/runtime.d.ts.map +1 -0
  63. package/dist/types/server-presets.d.ts +9 -0
  64. package/dist/types/server-presets.d.ts.map +1 -0
  65. package/dist/types/server.d.ts +12 -0
  66. package/dist/types/server.d.ts.map +1 -0
  67. package/dist/types/types.d.ts +1346 -0
  68. package/dist/types/types.d.ts.map +1 -0
  69. package/package.json +94 -0
@@ -0,0 +1,2 @@
1
+ export declare const AI_CONNECT_DEFAULT_ACP_COMMANDS: Record<string, string>;
2
+ //# sourceMappingURL=acp-presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acp-presets.d.ts","sourceRoot":"","sources":["../../src/acp-presets.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAMlE,CAAC"}
@@ -0,0 +1,39 @@
1
+ import type { AcpModelCatalog, AcpClientOptions, DiscoverAcpModelsContext, GenerateContext, GenerateStreamEvent, NormalizedRoute, PortableFileInput, UsageInfo } from "./types.js";
2
+ type AcpPromptOutput = {
3
+ text: string;
4
+ attachments: PortableFileInput[];
5
+ usage?: UsageInfo;
6
+ warnings: string[];
7
+ data: {
8
+ command: string;
9
+ sessionId: string;
10
+ stopReason?: string;
11
+ };
12
+ };
13
+ declare function mergeUsageInfo(current: UsageInfo | undefined, next: UsageInfo | undefined): UsageInfo | undefined;
14
+ declare function usageFromMeta(meta: Record<string, unknown>): UsageInfo | undefined;
15
+ declare function usageFromUpdate(update: Record<string, unknown>): UsageInfo | undefined;
16
+ declare function usageFromPromptResult(result: unknown): UsageInfo | undefined;
17
+ export declare function resolveAcpCommand(route: NormalizedRoute, options: AcpClientOptions | undefined): string;
18
+ export declare function resolveAcpExecutable(route: NormalizedRoute, options: AcpClientOptions | undefined): string;
19
+ export declare function createAcpTransportManager(options?: AcpClientOptions): {
20
+ runPrompt: (context: GenerateContext) => Promise<AcpPromptOutput>;
21
+ streamPrompt: (context: GenerateContext) => AsyncIterable<GenerateStreamEvent>;
22
+ discoverModels: (context: DiscoverAcpModelsContext) => Promise<AcpModelCatalog>;
23
+ dispose: () => Promise<void>;
24
+ };
25
+ export declare function runAcpPrompt(context: GenerateContext, options?: AcpClientOptions): Promise<AcpPromptOutput>;
26
+ /**
27
+ * Internal usage-merge primitives surfaced for deterministic unit tests
28
+ * (C5/INV-USAGE-1). NOT re-exported from `src/index*.ts`, so the public package
29
+ * surface is unchanged.
30
+ * @internal
31
+ */
32
+ export declare const __acpUsageInternals: {
33
+ readonly mergeUsageInfo: typeof mergeUsageInfo;
34
+ readonly usageFromPromptResult: typeof usageFromPromptResult;
35
+ readonly usageFromUpdate: typeof usageFromUpdate;
36
+ readonly usageFromMeta: typeof usageFromMeta;
37
+ };
38
+ export {};
39
+ //# sourceMappingURL=acp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acp.d.ts","sourceRoot":"","sources":["../../src/acp.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAEV,eAAe,EAEf,gBAAgB,EAGhB,wBAAwB,EACxB,eAAe,EAEf,mBAAmB,EACnB,eAAe,EAEf,iBAAiB,EAEjB,SAAS,EAGV,MAAM,YAAY,CAAC;AAmFpB,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH,CAAC;AAijCF,iBAAS,cAAc,CACrB,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,IAAI,EAAE,SAAS,GAAG,SAAS,GAC1B,SAAS,GAAG,SAAS,CAuBvB;AAqCD,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,SAAS,CAY3E;AAED,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,SAAS,CA8B/E;AAoBD,iBAAS,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAqDrE;AAiKD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,gBAAgB,GAAG,SAAS,GACpC,MAAM,CAmBR;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,gBAAgB,GAAG,SAAS,GACpC,MAAM,CAER;AAq/BD,wBAAgB,yBAAyB,CACvC,OAAO,CAAC,EAAE,gBAAgB,GACzB;IACD,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,YAAY,EAAE,CACZ,OAAO,EAAE,eAAe,KACrB,aAAa,CAAC,mBAAmB,CAAC,CAAC;IACxC,cAAc,EAAE,CACd,OAAO,EAAE,wBAAwB,KAC9B,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAiaA;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC,CAW1B;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;CAKtB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { AiConnectClient, AiConnectConfig, AiConnectConfigInput, CreateClientOptions, RuntimeEnvironment } from "./types.js";
2
+ export declare function createBrowserClient(configOrInput: AiConnectConfig | AiConnectConfigInput, options?: Omit<CreateClientOptions, "runtime"> & {
3
+ runtime?: Partial<RuntimeEnvironment>;
4
+ }): AiConnectClient;
5
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,eAAe,GAAG,oBAAoB,EACrD,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAClC,GACL,eAAe,CAejB"}
@@ -0,0 +1,2 @@
1
+ export * from "./index.js";
2
+ //# sourceMappingURL=bun.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bun.d.ts","sourceRoot":"","sources":["../../src/bun.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { RuntimeKind, TransportKind } from "./types.js";
2
+ export type TextTransportCatalogEntry = {
3
+ providerId: string;
4
+ providerLabel: string;
5
+ transportKind: TransportKind;
6
+ transportId: string;
7
+ transportLabel: string;
8
+ runtime: RuntimeKind | "universal";
9
+ defaultModel: string;
10
+ defaultBaseUrl?: string;
11
+ defaultCommand?: string;
12
+ };
13
+ export type TextProviderCatalogEntry = {
14
+ providerId: string;
15
+ label: string;
16
+ transports: TextTransportCatalogEntry[];
17
+ };
18
+ export declare function listTextProviderCatalog(options?: {
19
+ runtime?: RuntimeKind;
20
+ }): TextProviderCatalogEntry[];
21
+ export declare function getTextProviderCatalogEntry(providerId: string, options?: {
22
+ runtime?: RuntimeKind;
23
+ }): TextProviderCatalogEntry | undefined;
24
+ export declare function getTextTransportPreset(providerId: string, transportKind: TransportKind, options?: {
25
+ runtime?: RuntimeKind;
26
+ }): TextTransportCatalogEntry | undefined;
27
+ export declare function getTextTransportPresetById(providerId: string, transportId: string, options?: {
28
+ runtime?: RuntimeKind;
29
+ }): TextTransportCatalogEntry | undefined;
30
+ export declare function getDefaultTextTransportPreset(providerId: string, options?: {
31
+ runtime?: RuntimeKind;
32
+ }): TextTransportCatalogEntry | undefined;
33
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/catalog.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,WAAW,GAAG,WAAW,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,yBAAyB,EAAE,CAAC;CACzC,CAAC;AAqMF,wBAAgB,uBAAuB,CAAC,OAAO,GAAE;IAC/C,OAAO,CAAC,EAAE,WAAW,CAAC;CAClB,GAAG,wBAAwB,EAAE,CAQlC;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,WAAW,CAAC;CAClB,GACL,wBAAwB,GAAG,SAAS,CAItC;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,aAAa,EAC5B,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,WAAW,CAAC;CAClB,GACL,yBAAyB,GAAG,SAAS,CAIvC;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,WAAW,CAAC;CAClB,GACL,yBAAyB,GAAG,SAAS,CAIvC;AAED,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,WAAW,CAAC;CAClB,GACL,yBAAyB,GAAG,SAAS,CASvC"}
@@ -0,0 +1,12 @@
1
+ import type { CliTransportOptions, CliTransportPresetId } from "./types.js";
2
+ export type CliTransportPreset = {
3
+ id: CliTransportPresetId;
4
+ label: string;
5
+ command: string;
6
+ transportId: string;
7
+ options: CliTransportOptions;
8
+ };
9
+ export declare const AI_CONNECT_DEFAULT_CLI_PRESETS: Record<CliTransportPresetId, CliTransportPreset>;
10
+ export declare const AI_CONNECT_DEFAULT_CLI_COMMANDS: Record<string, string>;
11
+ export declare function getCliTransportPreset(presetId: CliTransportPresetId): CliTransportPreset;
12
+ //# sourceMappingURL=cli-presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-presets.d.ts","sourceRoot":"","sources":["../../src/cli-presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,oBAAoB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,MAAM,CACjD,oBAAoB,EACpB,kBAAkB,CAyHjB,CAAC;AAEJ,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOlE,CAAC;AAEF,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,oBAAoB,GAC7B,kBAAkB,CAEpB"}
@@ -0,0 +1,20 @@
1
+ import type { CliClientOptions, AcpLaunchOptions, GenerateContext, NormalizedRoute, RouteHandlerGenerateResult } from "./types.js";
2
+ export type CliResolvedDiscoverySource = {
3
+ via: "none";
4
+ } | {
5
+ via: "acp";
6
+ providerId: string;
7
+ transportId: string;
8
+ auth?: {
9
+ methodId: string;
10
+ params: Record<string, unknown>;
11
+ };
12
+ launch?: AcpLaunchOptions;
13
+ };
14
+ export declare function resolveCliExecutable(route: NormalizedRoute, options?: CliClientOptions): string;
15
+ export declare function resolveCliDiscoverySource(route: NormalizedRoute): CliResolvedDiscoverySource;
16
+ export declare function createCliDiscoveryAcpRoute(route: NormalizedRoute): NormalizedRoute | undefined;
17
+ export declare function createCliTransportManager(options?: CliClientOptions): {
18
+ runPrompt: (context: GenerateContext) => Promise<RouteHandlerGenerateResult>;
19
+ };
20
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,gBAAgB,EAOhB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,0BAA0B,EAI3B,MAAM,YAAY,CAAC;AAkBpB,MAAM,MAAM,0BAA0B,GAClC;IACE,GAAG,EAAE,MAAM,CAAC;CACb,GACD;IACE,GAAG,EAAE,KAAK,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAC;IACF,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAkJN,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,gBAAgB,GACzB,MAAM,CAER;AA6FD,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,eAAe,GACrB,0BAA0B,CAa5B;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,GACrB,eAAe,GAAG,SAAS,CAkB7B;AA+nBD,wBAAgB,yBAAyB,CACvC,OAAO,CAAC,EAAE,gBAAgB,GACzB;IACD,SAAS,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC9E,CAkDA"}
@@ -0,0 +1,3 @@
1
+ import type { AiConnectClient, AiConnectConfig, AiConnectConfigInput, CreateClientOptions } from "./types.js";
2
+ export declare function createClient(configOrInput: AiConnectConfig | AiConnectConfigInput, options?: CreateClientOptions): AiConnectClient;
3
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAKV,eAAe,EACf,eAAe,EACf,oBAAoB,EAMpB,mBAAmB,EAoDpB,MAAM,YAAY,CAAC;AAk4BpB,wBAAgB,YAAY,CAAC,aAAa,EAAE,eAAe,GAAG,oBAAoB,EAAE,OAAO,GAAE,mBAAwB,GAAG,eAAe,CAyzDtI"}
@@ -0,0 +1,30 @@
1
+ import type { AiConnectConfig, AiConnectConfigInput, FanoutPolicy, NormalizedFanoutPolicy, NormalizedRoute, PublicRouteCapabilities, RouteCapabilities, UnknownSelectorPolicy } from "./types.js";
2
+ /**
3
+ * Project the secret-free, client-safe capability subset (INV-PROJ-1). The SINGLE
4
+ * source of truth shared by `toPublicRoute` (PublicRoute) and the router's
5
+ * `candidateModels()` (CandidateModel) projections, so internal routing flags
6
+ * (localOnly, requiresFilesystem, the requires-/profile-verification/rotation
7
+ * flags) can never leak onto a public/ModelSelector surface. Built by an EXPLICIT
8
+ * field-by-field copy keyed on the {@link PublicRouteCapabilities} `Pick` — never
9
+ * by spreading the full {@link RouteCapabilities}.
10
+ */
11
+ export declare function toPublicCapabilities(capabilities: RouteCapabilities): PublicRouteCapabilities;
12
+ /**
13
+ * Normalize a {@link FanoutPolicy} into a {@link NormalizedFanoutPolicy} (C9). Every unset/invalid
14
+ * field resolves to `POSITIVE_INFINITY` (unbounded). Pure; no client/runtime dependency.
15
+ */
16
+ export declare function normalizeFanoutPolicy(policy: FanoutPolicy | undefined): NormalizedFanoutPolicy;
17
+ /**
18
+ * Merge a per-request {@link FanoutPolicy} OVER a client-level default, per-field (C9 / R15). A
19
+ * field present (non-`undefined`) on `request` wins; otherwise the `base` field is kept. Returns a
20
+ * plain {@link FanoutPolicy} (still to be normalized) so an unset field on BOTH stays unset. The
21
+ * result is fresh — neither input is mutated; the per-request limiter is built request-scoped.
22
+ */
23
+ export declare function mergeFanoutPolicy(base: FanoutPolicy | undefined, request: FanoutPolicy | undefined): FanoutPolicy;
24
+ export declare function defineConfig(input: AiConnectConfigInput): AiConnectConfig;
25
+ export declare function isNormalizedConfig(value: AiConnectConfig | AiConnectConfigInput): value is AiConnectConfig;
26
+ export declare function resolveRouteSelectors(selectors: string[] | undefined, routes: NormalizedRoute[], policy?: {
27
+ unknownSelector?: UnknownSelectorPolicy;
28
+ defaultRouteId?: string;
29
+ }): string[];
30
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,eAAe,EACf,oBAAoB,EAKpB,YAAY,EACZ,sBAAsB,EAQtB,eAAe,EAIf,uBAAuB,EACvB,iBAAiB,EAGjB,qBAAqB,EAKtB,MAAM,YAAY,CAAC;AA8GpB;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,iBAAiB,GAC9B,uBAAuB,CAYzB;AAuED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,GAAG,SAAS,GAC/B,sBAAsB,CAMxB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,OAAO,EAAE,YAAY,GAAG,SAAS,GAChC,YAAY,CAkBd;AA+jBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,oBAAoB,GAAG,eAAe,CAsOzE;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,eAAe,GAAG,oBAAoB,GAC5C,KAAK,IAAI,eAAe,CAQ1B;AAED,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,MAAM,EAAE,eAAe,EAAE,EACzB,MAAM,CAAC,EAAE;IACP,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GACA,MAAM,EAAE,CAEV"}
@@ -0,0 +1,5 @@
1
+ import type { FetchLike, RouteHandlerRegistry } from "./types.js";
2
+ export declare function createDefaultRouteHandlers(options?: {
3
+ fetch?: FetchLike;
4
+ }): RouteHandlerRegistry;
5
+ //# sourceMappingURL=default-handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-handlers.d.ts","sourceRoot":"","sources":["../../src/default-handlers.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAKV,SAAS,EAaT,oBAAoB,EAKrB,MAAM,YAAY,CAAC;AA8iGpB,wBAAgB,0BAA0B,CACxC,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,SAAS,CAAC;CACd,GACL,oBAAoB,CAiEtB"}
@@ -0,0 +1,15 @@
1
+ import type { AbortReason, AiConnectErrorCode } from "./types.js";
2
+ export declare class AiConnectError extends Error {
3
+ readonly code: AiConnectErrorCode;
4
+ readonly details: Record<string, unknown> | undefined;
5
+ constructor(code: AiConnectErrorCode, message: string, details?: Record<string, unknown>);
6
+ }
7
+ export declare function isAiConnectError(error: unknown): error is AiConnectError;
8
+ /**
9
+ * Map a derived-abort `reason` to the canonical terminal error. `timeout` → `"timeout"`
10
+ * (deadline elapsed), anything else (including `undefined`/`"caller"`) → `"aborted"`
11
+ * (caller cancellation). Both codes are hard-terminal: they never rotate/retry/fall back.
12
+ */
13
+ export declare function mapAbortError(reason: AbortReason | undefined, message?: string): AiConnectError;
14
+ export declare function toAiConnectError(error: unknown, fallbackCode?: AiConnectErrorCode): AiConnectError;
15
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAElE,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;gBAGpD,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAOpC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,CAAC,EAAE,MAAM,GACf,cAAc,CAIhB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,YAAY,GAAE,kBAA4C,GACzD,cAAc,CA0BhB"}
@@ -0,0 +1,20 @@
1
+ import type { FanoutLimiter, NormalizedFanoutPolicy, RuntimeEnvironment } from "./types.js";
2
+ /**
3
+ * Create a fan-out limiter from a normalized policy + a runtime clock seam.
4
+ *
5
+ * Three independent gates, all checked on `acquire`:
6
+ * - **lifetime `maxCalls`** — a hard ceiling. The `(callsStarted)`-th acquire past the ceiling
7
+ * REJECTS synchronously-derived with `AiConnectError('fanout_limit')`; it consumes no slot and
8
+ * starts no transport (the client raises this BEFORE route selection, R16).
9
+ * - **rate `requestsPerSecond`** — a token bucket of capacity `requestsPerSecond`, refilled at
10
+ * `requestsPerSecond` tokens/sec computed from `runtime.now()` deltas (recompute-on-acquire).
11
+ * When empty, the waiter is parked until enough wall-time (per `runtime.now()`) has elapsed —
12
+ * the client advances the seeded clock to release it deterministically.
13
+ * - **concurrency `maxConcurrency`** — a semaphore; over-cap acquires queue FIFO (fairness, R15).
14
+ *
15
+ * The returned `acquire` resolves to a single-use `release` fn. `release` frees the concurrency
16
+ * slot and pumps the FIFO queue. `maxCalls` is charged at acquire time (a started call counts even
17
+ * if it later fails) and is NEVER refunded by `release`.
18
+ */
19
+ export declare function createFanoutLimiter(policy: NormalizedFanoutPolicy, runtime: RuntimeEnvironment): FanoutLimiter;
20
+ //# sourceMappingURL=fanout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fanout.d.ts","sourceRoot":"","sources":["../../src/fanout.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AASpB;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,kBAAkB,GAC1B,aAAa,CA6Lf"}
@@ -0,0 +1,42 @@
1
+ import type { PortableFile, PortableFileCategory, PortableFilePayload, PortableFileInput } from "./types.js";
2
+ /**
3
+ * MIME types treated as `document` (UR-003: PDF input). A Set keeps membership
4
+ * checks O(1) and the surface explicit — extend here when a new document format
5
+ * gains provider parity. Currently application/pdf only; the document content
6
+ * blocks of all default API providers accept it.
7
+ */
8
+ export declare const SUPPORTED_DOCUMENT_MIME_TYPES: ReadonlySet<string>;
9
+ export declare function inferPortableFileMimeType(file: PortableFile): string | undefined;
10
+ export declare function isPortableImageFile(file: PortableFile): boolean;
11
+ export declare function isPortableTextFile(file: PortableFile): boolean;
12
+ export declare function portableFileRemoteUri(file: PortableFile): string | undefined;
13
+ /**
14
+ * Coarse multimodal classification (C6). MIME type wins; document membership is
15
+ * gated by `SUPPORTED_DOCUMENT_MIME_TYPES` so only known-supported document
16
+ * formats route to a provider document block. Order: image → document → text →
17
+ * other (stable; `mixed-attachments-ordering` relies on it not reordering).
18
+ */
19
+ export declare function portableFileCategory(file: PortableFile): PortableFileCategory;
20
+ export declare function isPortableDocumentFile(file: PortableFile): boolean;
21
+ /**
22
+ * Raw base64 of a portable file's bytes (NO data-url prefix). Returns undefined
23
+ * when no decodable byte source is available (e.g. a remote reference carrying
24
+ * only a URI / providerFileId). Used by the Anthropic document base64 block and
25
+ * the Gemini inlineData path. All node:* access stays behind `loadFsPromises`.
26
+ */
27
+ export declare function portableFileToBase64(file: PortableFile): Promise<string | undefined>;
28
+ export declare function portableFileToDataUrl(file: PortableFile): Promise<string | undefined>;
29
+ export declare function portableFileToBytes(file: PortableFile): Promise<Uint8Array | undefined>;
30
+ export declare function portableFileToText(file: PortableFile): Promise<string | undefined>;
31
+ /**
32
+ * SINGLE decode path (C6 — INV the design calls "materializePortableFile"). One
33
+ * pass resolves the category + MIME type and reads the byte/text/uri source
34
+ * exactly once, populating only the carriers a downstream provider builder can
35
+ * use. Every consumer (api document/image builders, acp PDF path) reads from the
36
+ * payload rather than re-decoding the file. All filesystem access flows through
37
+ * `portableFileToBytes`/`portableFileToText`, which sit behind the lazy
38
+ * `loadFsPromises` guard (F-A2: browser-reachable, node:*-free).
39
+ */
40
+ export declare function materializePortableFile(file: PortableFile): Promise<PortableFilePayload>;
41
+ export declare function preparePortableFile(input: PortableFileInput): PortableFile;
42
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAEpB;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,EAAE,WAAW,CAAC,MAAM,CAE5D,CAAC;AAqLH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAmBhF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAE/D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAO9D;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAO5E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,oBAAoB,CAY7E;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAElE;AAUD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ7B;AA8BD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAyB7B;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAkBjC;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsB7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAyC9B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CA2E1E"}
@@ -0,0 +1,40 @@
1
+ import type { GenerateRequest, ImageSizePreset, MessageInput, PortableFile } from "./types.js";
2
+ export declare const IMAGE_PROMPT_PROTOCOL = "ai_connect_image_json_v1";
3
+ export declare const DEFAULT_IMAGE_SIZE: ImageSizePreset;
4
+ export declare const IMAGE_SIZE_PRESETS: Record<string, string>;
5
+ export declare function normalizeImageSource(messages: MessageInput[]): string;
6
+ export declare function filterStructuralMarkers(content: string): {
7
+ cleanContent: string;
8
+ structure: Record<string, unknown>;
9
+ hasStructure: boolean;
10
+ };
11
+ export declare function buildImageSystemPreferencePayload(input: {
12
+ size: string;
13
+ model: string;
14
+ rawPrompt: boolean;
15
+ aspectRatio?: string;
16
+ quality?: string;
17
+ imageSize?: string;
18
+ style?: string;
19
+ }): Record<string, unknown>;
20
+ export declare function buildImageUserPromptPayload(input: {
21
+ content: string;
22
+ size: string;
23
+ rawPrompt: boolean;
24
+ referenceImages: PortableFile[];
25
+ hasSourceImage: boolean;
26
+ hasMask: boolean;
27
+ }): Record<string, unknown>;
28
+ export declare function serializeImagePayload(payload: Record<string, unknown>): string;
29
+ export declare function buildImagePromptBundle(input: {
30
+ request: GenerateRequest;
31
+ model: string;
32
+ referenceImages: PortableFile[];
33
+ }): {
34
+ size: string;
35
+ systemPreference: Record<string, unknown>;
36
+ userPrompt: Record<string, unknown>;
37
+ prompt: string;
38
+ };
39
+ export declare function extractImagePayloads(...nodes: unknown[]): string[];
40
+ //# sourceMappingURL=image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../src/image.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,qBAAqB,6BAA6B,CAAC;AAChE,eAAO,MAAM,kBAAkB,EAAE,eAA6B,CAAC;AAE/D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiBrD,CAAC;AA0DF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAIrE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,YAAY,EAAE,OAAO,CAAC;CACvB,CAsDA;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAe1B;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,YAAY,EAAE,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkC1B;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,MAAM,CAER;AAMD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,YAAY,EAAE,CAAC;CACjC,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;CAChB,CA4CA;AA4ED,wBAAgB,oBAAoB,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAOlE"}
@@ -0,0 +1,18 @@
1
+ export { createClient } from "./client.js";
2
+ export { defineConfig, isNormalizedConfig, mergeFanoutPolicy, normalizeFanoutPolicy, resolveRouteSelectors, } from "./config.js";
3
+ export { createDefaultRouteHandlers } from "./default-handlers.js";
4
+ export { AiConnectError, isAiConnectError, mapAbortError, toAiConnectError } from "./errors.js";
5
+ export { createFanoutLimiter } from "./fanout.js";
6
+ export { DEFAULT_CONTEXT_WINDOW, MODEL_REFERENCE, detectModelFree, extractModelContextLength, lookupModelRef, modelContextCacheKey, normalizeModelKey, parseModelPricing, resolveModelContextWindow, } from "./model-reference.js";
7
+ export { AI_CONNECT_DEFAULT_ACP_COMMANDS, } from "./acp-presets.js";
8
+ export { AI_CONNECT_DEFAULT_CLI_COMMANDS, AI_CONNECT_DEFAULT_CLI_PRESETS, getCliTransportPreset, } from "./cli-presets.js";
9
+ export { AI_CONNECT_DEFAULT_SERVER_COMMANDS, AI_CONNECT_DEFAULT_SERVER_PRESETS, } from "./server-presets.js";
10
+ export { getDefaultTextTransportPreset, getTextProviderCatalogEntry, getTextTransportPreset, getTextTransportPresetById, listTextProviderCatalog, } from "./catalog.js";
11
+ export { createConsoleWideEventLogger, shouldEmitWideEvent, } from "./logging.js";
12
+ export { SUPPORTED_DOCUMENT_MIME_TYPES, isPortableDocumentFile, materializePortableFile, portableFileCategory, portableFileToBase64, preparePortableFile, } from "./files.js";
13
+ export { PROBE_DEFAULT_CONCURRENCY, PROBE_DEFAULT_TIMEOUT_MS, PROBE_DEFAULT_TTL_MS, classifyProbeOutcome, } from "./probe.js";
14
+ export { buildImagePromptBundle, buildImageSystemPreferencePayload, buildImageUserPromptPayload, DEFAULT_IMAGE_SIZE, extractImagePayloads, filterStructuralMarkers, IMAGE_PROMPT_PROTOCOL, IMAGE_SIZE_PRESETS, } from "./image.js";
15
+ export { createBrowserClient, } from "./browser.js";
16
+ export { createBrowserRuntimeEnvironment, createRuntimeEnvironment, inferRuntimeKind, } from "./runtime.js";
17
+ export type * from "./types.js";
18
+ //# sourceMappingURL=index.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,+BAA+B,GAChC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kCAAkC,EAClC,iCAAiC,GAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,mBAAmB,YAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ export { createClient } from "./client.js";
2
+ export { defineConfig, isNormalizedConfig, mergeFanoutPolicy, normalizeFanoutPolicy, resolveRouteSelectors, } from "./config.js";
3
+ export { createDefaultRouteHandlers } from "./default-handlers.js";
4
+ export { AiConnectError, isAiConnectError, mapAbortError, toAiConnectError } from "./errors.js";
5
+ export { createFanoutLimiter } from "./fanout.js";
6
+ export { DEFAULT_CONTEXT_WINDOW, MODEL_REFERENCE, detectModelFree, extractModelContextLength, lookupModelRef, modelContextCacheKey, normalizeModelKey, parseModelPricing, resolveModelContextWindow, } from "./model-reference.js";
7
+ export { AI_CONNECT_DEFAULT_ACP_COMMANDS, } from "./acp-presets.js";
8
+ export { AI_CONNECT_DEFAULT_CLI_COMMANDS, AI_CONNECT_DEFAULT_CLI_PRESETS, getCliTransportPreset, } from "./cli-presets.js";
9
+ export { AI_CONNECT_DEFAULT_SERVER_COMMANDS, AI_CONNECT_DEFAULT_SERVER_PRESETS, } from "./server-presets.js";
10
+ export { getDefaultTextTransportPreset, getTextProviderCatalogEntry, getTextTransportPreset, getTextTransportPresetById, listTextProviderCatalog, } from "./catalog.js";
11
+ export { createConsoleWideEventLogger, shouldEmitWideEvent, } from "./logging.js";
12
+ export { SUPPORTED_DOCUMENT_MIME_TYPES, isPortableDocumentFile, materializePortableFile, portableFileCategory, portableFileToBase64, preparePortableFile, } from "./files.js";
13
+ export { PROBE_DEFAULT_CONCURRENCY, PROBE_DEFAULT_TIMEOUT_MS, PROBE_DEFAULT_TTL_MS, classifyProbeOutcome, } from "./probe.js";
14
+ export { buildImagePromptBundle, buildImageSystemPreferencePayload, buildImageUserPromptPayload, DEFAULT_IMAGE_SIZE, extractImagePayloads, filterStructuralMarkers, IMAGE_PROMPT_PROTOCOL, IMAGE_SIZE_PRESETS, } from "./image.js";
15
+ export { createBrowserClient, } from "./browser.js";
16
+ export { createBrowserRuntimeEnvironment, createLocalRuntimeEnvironment, createRuntimeEnvironment, inferRuntimeKind, } from "./runtime.js";
17
+ export { createDefaultLocalRuntimeEnvironment, createLocalClient, } from "./local.js";
18
+ export type * from "./types.js";
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,+BAA+B,GAChC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kCAAkC,EAClC,iCAAiC,GAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oCAAoC,EACpC,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,mBAAmB,YAAY,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { AcpClientOptions, CliClientOptions, RouteHandlerRegistry, ServerClientOptions } from "./types.js";
2
+ type LocalRouteHandlers = {
3
+ handlers: RouteHandlerRegistry;
4
+ dispose: () => Promise<void>;
5
+ };
6
+ export declare function createLocalRouteHandlers(options?: {
7
+ acp?: AcpClientOptions;
8
+ cli?: CliClientOptions;
9
+ server?: ServerClientOptions;
10
+ }): LocalRouteHandlers;
11
+ export {};
12
+ //# sourceMappingURL=local-handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-handlers.d.ts","sourceRoot":"","sources":["../../src/local-handlers.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,wBAAwB,CACtC,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;CACzB,GACL,kBAAkB,CAgKpB"}
@@ -0,0 +1,6 @@
1
+ import type { AiConnectClient, AiConnectConfig, AiConnectConfigInput, CreateClientOptions, RuntimeEnvironment } from "./types.js";
2
+ export declare function createDefaultLocalRuntimeEnvironment(overrides?: Partial<RuntimeEnvironment>): RuntimeEnvironment;
3
+ export declare function createLocalClient(configOrInput: AiConnectConfig | AiConnectConfigInput, options?: Omit<CreateClientOptions, "runtime"> & {
4
+ runtime?: Partial<RuntimeEnvironment>;
5
+ }): AiConnectClient;
6
+ //# sourceMappingURL=local.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/local.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAgCpB,wBAAgB,oCAAoC,CAClD,SAAS,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAC1C,kBAAkB,CAMpB;AAED,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,eAAe,GAAG,oBAAoB,EACrD,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAClC,GACL,eAAe,CAkCjB"}
@@ -0,0 +1,8 @@
1
+ import type { WideEvent, WideEventLogger, WideEventSamplingOptions } from "./types.js";
2
+ export interface ConsoleWideEventLoggerOptions {
3
+ pretty?: boolean;
4
+ write?: (line: string) => void;
5
+ }
6
+ export declare function createConsoleWideEventLogger(options?: ConsoleWideEventLoggerOptions): WideEventLogger;
7
+ export declare function shouldEmitWideEvent(event: WideEvent, options?: WideEventSamplingOptions): Promise<boolean>;
8
+ //# sourceMappingURL=logging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/logging.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,eAAe,CAcjB;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,SAAS,EAChB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,OAAO,CAAC,CAoDlB"}
@@ -0,0 +1,97 @@
1
+ type GatewayJsonValue = string | number | boolean | null | GatewayJsonValue[] | {
2
+ [key: string]: GatewayJsonValue;
3
+ };
4
+ export type CapturedGatewayFormEntry = {
5
+ kind: "text";
6
+ value: string;
7
+ } | {
8
+ kind: "file";
9
+ name: string;
10
+ type: string;
11
+ size: number;
12
+ };
13
+ export interface CapturedGatewayRequest {
14
+ method: string;
15
+ url: string;
16
+ pathname: string;
17
+ searchParams: Record<string, string[]>;
18
+ headers: Record<string, string>;
19
+ bodyType: "none" | "json" | "form-data" | "text";
20
+ jsonBody?: GatewayJsonValue;
21
+ formData?: Record<string, CapturedGatewayFormEntry[]>;
22
+ textBody?: string;
23
+ }
24
+ export interface CapturedGatewayResponse {
25
+ status: number;
26
+ statusText: string;
27
+ headers: Record<string, string>;
28
+ bodyType: "none" | "json" | "text" | "binary";
29
+ jsonBody?: GatewayJsonValue;
30
+ textBody?: string;
31
+ bodyBytes?: number;
32
+ }
33
+ export interface CapturedGatewayTiming {
34
+ totalMs: number;
35
+ upstreamMs?: number;
36
+ }
37
+ export interface CapturedGatewayExchange {
38
+ mode: "mock" | "mitm";
39
+ request: CapturedGatewayRequest;
40
+ response: CapturedGatewayResponse;
41
+ timing: CapturedGatewayTiming;
42
+ upstreamUrl?: string;
43
+ }
44
+ export interface MockGatewayOptions {
45
+ host?: string;
46
+ port?: number;
47
+ mode?: "mock" | "mitm";
48
+ upstreamOrigin?: string;
49
+ onRequest?: (request: CapturedGatewayRequest, requestIndex: number) => void;
50
+ onExchange?: (exchange: CapturedGatewayExchange, requestIndex: number) => void;
51
+ }
52
+ export interface MockGateway {
53
+ origin: string;
54
+ requests: CapturedGatewayRequest[];
55
+ exchanges: CapturedGatewayExchange[];
56
+ stop(): void;
57
+ reset(): void;
58
+ }
59
+ export interface CapturedGatewayRequestSummary {
60
+ method: string;
61
+ pathname: string;
62
+ bodyType: CapturedGatewayRequest["bodyType"];
63
+ searchParams: Record<string, string[]>;
64
+ bodyKeys?: string[];
65
+ formKeys?: string[];
66
+ textChars?: number;
67
+ }
68
+ export interface CapturedGatewayResponseSummary {
69
+ status: number;
70
+ bodyType: CapturedGatewayResponse["bodyType"];
71
+ bodyKeys?: string[];
72
+ textChars?: number;
73
+ bodyBytes?: number;
74
+ }
75
+ export interface CapturedGatewayExchangeSummary {
76
+ mode: CapturedGatewayExchange["mode"];
77
+ method: string;
78
+ pathname: string;
79
+ status: number;
80
+ requestBodyType: CapturedGatewayRequest["bodyType"];
81
+ responseBodyType: CapturedGatewayResponse["bodyType"];
82
+ searchParams: Record<string, string[]>;
83
+ totalMs: number;
84
+ upstreamMs?: number;
85
+ bodyKeys?: string[];
86
+ formKeys?: string[];
87
+ responseBodyKeys?: string[];
88
+ responseTextChars?: number;
89
+ responseBytes?: number;
90
+ upstreamUrl?: string;
91
+ }
92
+ export declare function summarizeCapturedGatewayRequest(request: CapturedGatewayRequest): CapturedGatewayRequestSummary;
93
+ export declare function summarizeCapturedGatewayResponse(response: CapturedGatewayResponse): CapturedGatewayResponseSummary;
94
+ export declare function summarizeCapturedGatewayExchange(exchange: CapturedGatewayExchange): CapturedGatewayExchangeSummary;
95
+ export declare function startMockGateway(options?: MockGatewayOptions): MockGateway;
96
+ export {};
97
+ //# sourceMappingURL=mock-gateway.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-gateway.d.ts","sourceRoot":"","sources":["../../src/mock-gateway.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,gBAAgB,EAAE,GAClB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAA;CAAE,CAAC;AAExC,MAAM,MAAM,wBAAwB,GAChC;IACE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEN,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IACjD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC9C,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,OAAO,EAAE,sBAAsB,CAAC;IAChC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5E,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CAChF;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,SAAS,EAAE,uBAAuB,EAAE,CAAC;IACrC,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC7C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACpD,gBAAgB,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACtD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAybD,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,sBAAsB,GAC9B,6BAA6B,CAc/B;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,uBAAuB,GAChC,8BAA8B,CAYhC;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,uBAAuB,GAChC,8BAA8B,CA2BhC;AAED,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,kBAAuB,GAAG,WAAW,CAwD9E"}