@zhivex-ai/openai 0.7.2 → 0.8.1

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.
package/README.md CHANGED
@@ -5,32 +5,258 @@ OpenAI adapter for Zhivex AI SDK.
5
5
  ## Install
6
6
 
7
7
  ```bash
8
- bun add @zhivex-ai/openai
8
+ bun add @zhivex-ai/openai @zhivex-ai/core zod
9
9
  ```
10
10
 
11
- ## Capability notes
11
+ ## Audio response limits
12
12
 
13
- The adapter exposes model-specific agent capabilities at runtime. Hosted Responses tools such as `tool_search`, `computer_use_preview`, shell, apply patch, and skills are validated before a request is sent, so unsupported model/tool combinations fail with `UnsupportedFeatureError` instead of relying on a provider-side 400.
13
+ Transcription and speech responses are bounded before JSON parsing or binary buffering. Defaults are 16 MiB for speech, 4 MiB for transcription JSON, and 64 KiB for error bodies. Override them at provider creation time when your application requires a stricter policy:
14
14
 
15
15
  ```ts
16
- import { createOpenAI, openAIToolSearchTool } from "@zhivex-ai/openai";
17
- import { generateText, getAgentCapabilities } from "@zhivex-ai/core";
16
+ const openai = createOpenAI({
17
+ responseLimits: {
18
+ speechBytes: 16 * 1024 * 1024,
19
+ transcriptionBytes: 1024 * 1024,
20
+ errorBodyBytes: 64 * 1024
21
+ }
22
+ });
23
+ ```
24
+
25
+ Oversized successful bodies throw `ProviderResponseTooLargeError`. Provider HTTP errors keep their original status and expose only a bounded, possibly truncated `responseBody`.
26
+
27
+ ## GPT-5.6
28
+
29
+ The adapter recognizes the three GPT-5.6 model IDs and their shared SDK surface:
30
+
31
+ - `gpt-5.6-sol`, also available through the `gpt-5.6` alias
32
+ - `gpt-5.6-terra`
33
+ - `gpt-5.6-luna`
34
+
35
+ Upstream availability is currently a limited preview for approved organizations; there is no public enrollment or general-availability date. API and Codex access are approved separately. See [OpenAI's GPT-5.6 preview access notes](https://help.openai.com/en/articles/20001325-a-preview-of-gpt-5-6-sol-terra-and-luna).
36
+
37
+ GPT-5.6 uses the Responses API by default in this adapter. `providerOptions.apiMode` can force either endpoint for compatibility; `"chat"` cannot be combined with Responses-only tools or Multi-agent.
38
+
39
+ For prompts with more than 272K input tokens, OpenAI charges 2x the input rate and 1.5x the output rate for the entire request, across Sol, Terra, and Luna. See the official [Sol](https://developers.openai.com/api/docs/models/gpt-5.6-sol), [Terra](https://developers.openai.com/api/docs/models/gpt-5.6-terra), and [Luna](https://developers.openai.com/api/docs/models/gpt-5.6-luna) model pages.
40
+
41
+ ```ts
42
+ import { generateText } from "@zhivex-ai/core";
43
+ import { createOpenAI } from "@zhivex-ai/openai";
18
44
 
19
45
  const openai = createOpenAI({ apiKey: process.env.OPENAI_API_KEY });
20
46
 
21
- console.log(getAgentCapabilities(openai("gpt-5.5")).computerUse);
22
- console.log(getAgentCapabilities(openai("gpt-5.4")).toolSearch);
23
- console.log(getAgentCapabilities(openai("gpt-5.4-nano")).toolSearch);
47
+ const result = await generateText({
48
+ model: openai("gpt-5.6"),
49
+ prompt: "Design a resilient job queue.",
50
+ reasoning: {
51
+ effort: "max",
52
+ mode: "pro",
53
+ context: "all_turns"
54
+ },
55
+ providerOptions: {
56
+ apiMode: "responses",
57
+ safety_identifier: "user_8f2a"
58
+ }
59
+ });
60
+
61
+ console.log(result.text);
62
+ ```
63
+
64
+ `reasoning.mode` (`"standard"` or `"pro"`) and `reasoning.context` (`"auto"`, `"current_turn"`, or `"all_turns"`) are Responses-only controls. Chat Completions continues to accept `reasoning.effort`, including `"max"`, but rejects `mode` and `context` instead of silently dropping them.
65
+
66
+ Multi-turn Responses normally continue through `previous_response_id`. With `providerOptions.store: false`, the adapter automatically requests `reasoning.encrypted_content` and replays the returned reasoning and output items instead, including across local tool-loop continuations.
67
+
68
+ Use `providerOptions.safety_identifier` for a stable, non-PII identifier for the end user. It is sent as an OpenAI request field; do not put email addresses, names, or other direct personal data in it.
69
+
70
+ ## Prompt caching
71
+
72
+ OpenAI prompt cache controls pass through `providerOptions`. Explicit breakpoints can be attached directly to a cacheable text, image, or file part through `providerMetadata`, or inserted immediately after a cacheable part with `openAIPromptCacheBreakpoint()`.
73
+
74
+ ```ts
75
+ import { generateText, user } from "@zhivex-ai/core";
76
+ import { createOpenAI, openAIPromptCacheBreakpoint } from "@zhivex-ai/openai";
77
+
78
+ const openai = createOpenAI();
24
79
 
25
80
  await generateText({
26
- model: openai("gpt-5.4"),
27
- prompt: "Inspect the available project tools.",
81
+ model: openai("gpt-5.6-terra"),
82
+ messages: [
83
+ user([
84
+ {
85
+ type: "text",
86
+ text: "Reusable project context",
87
+ providerMetadata: {
88
+ openai: { prompt_cache_breakpoint: { mode: "explicit" } }
89
+ }
90
+ },
91
+ { type: "text", text: "Answer the current question." },
92
+ openAIPromptCacheBreakpoint()
93
+ ])
94
+ ],
95
+ providerOptions: {
96
+ prompt_cache_key: "project-docs-v1",
97
+ prompt_cache_options: { mode: "explicit", ttl: "30m" }
98
+ }
99
+ });
100
+ ```
101
+
102
+ The helper marks the content block immediately before it. Placing it before any cacheable content throws `ConfigurationError`. `prompt_cache_retention` remains available for older model families, but it is a legacy alternative to `prompt_cache_options` and should not be combined with it for GPT-5.6.
103
+
104
+ For GPT-5.6, cache writes cost 1.25x the uncached input rate and cache reads receive a 90% discount. Normalized usage exposes these as `result.usage.cacheWriteTokens` and `result.usage.cachedInputTokens`; the raw response remains available when provider-specific details are needed. See [OpenAI's pricing and prompt caching notes](https://help.openai.com/en/articles/20001325-a-preview-of-gpt-5-6-sol-terra-and-luna).
105
+
106
+ ## Programmatic Tool Calling
107
+
108
+ GPT-5.6 supports Programmatic Tool Calling through `openAIProgrammaticToolCallingTool()`. Wrap callable tools with `openAIProgrammaticTool()` to declare `allowed_callers` and an optional provider output schema. The adapter preserves the provider `caller` metadata across tool execution and continuation requests.
109
+
110
+ ```ts
111
+ import { generateText, tool } from "@zhivex-ai/core";
112
+ import {
113
+ createOpenAI,
114
+ openAIProgrammaticTool,
115
+ openAIProgrammaticToolCallingTool
116
+ } from "@zhivex-ai/openai";
117
+ import { z } from "zod";
118
+
119
+ const openai = createOpenAI();
120
+ const inventory = openAIProgrammaticTool(
121
+ tool({
122
+ name: "inventory",
123
+ schema: z.object({ sku: z.string() }),
124
+ execute: ({ sku }) => ({ sku, available: 12 })
125
+ }),
126
+ {
127
+ allowedCallers: ["programmatic"],
128
+ outputSchema: z.object({ sku: z.string(), available: z.number() })
129
+ }
130
+ );
131
+
132
+ await generateText({
133
+ model: openai("gpt-5.6-luna"),
134
+ prompt: "Check the requested SKUs efficiently.",
135
+ maxSteps: 4,
136
+ tools: {
137
+ program: openAIProgrammaticToolCallingTool(),
138
+ inventory
139
+ }
140
+ });
141
+ ```
142
+
143
+ Hosted Code Interpreter and remote MCP accept `allowed_callers`; `openAIHostedShellTool()`, `openAIShellTool()`, and `openAIApplyPatchTool()` expose the equivalent `allowedCallers` option.
144
+
145
+ ## Multi-agent beta
146
+
147
+ Enable the GPT-5.6 Multi-agent beta with `providerOptions.multi_agent`. The adapter adds the `responses_multi_agent=v1` beta header automatically and returns the root agent's final answer from provider output.
148
+
149
+ ```ts
150
+ const result = await generateText({
151
+ model: openai("gpt-5.6-sol"),
152
+ prompt: "Delegate research and implementation planning, then return one final plan.",
153
+ providerOptions: {
154
+ multi_agent: {
155
+ enabled: true,
156
+ max_concurrent_subagents: 3
157
+ }
158
+ }
159
+ });
160
+ ```
161
+
162
+ ## Agent tools and capabilities
163
+
164
+ GPT-5.6 supports Tool Search, Computer Use GA, hosted and local shell, apply patch, and skills. The adapter validates model/tool combinations before a request is sent. `openAIComputerTool()` exposes GA Computer Use with batched actions and app-owned screenshot execution; `openAIComputerUseTool()` remains available for the legacy preview shape. `openAIShellTool()` and `openAIApplyPatchTool()` are SDK-managed harnesses that require approval by default.
165
+
166
+ Current family gates are:
167
+
168
+ | Capability | Supported OpenAI model families |
169
+ | --- | --- |
170
+ | Tool Search | GPT-5.6; GPT-5.5 base; GPT-5.4 base and mini |
171
+ | Computer Use | GPT-5.6; GPT-5.5 base; GPT-5.4 base and mini |
172
+ | Shell | GPT-5.6; GPT-5.5 base and pro; GPT-5.4 base, mini, nano, and pro |
173
+ | Apply patch and skills | GPT-5.6; GPT-5.5 base; GPT-5.4 base, mini, and nano |
174
+ | Programmatic Tool Calling and Multi-agent | GPT-5.6 |
175
+
176
+ ```ts
177
+ import { getAgentCapabilities } from "@zhivex-ai/core";
178
+ import {
179
+ openAIComputerTool,
180
+ openAIShellTool,
181
+ openAIToolSearchTool
182
+ } from "@zhivex-ai/openai";
183
+
184
+ const model = openai("gpt-5.6-sol");
185
+ console.log(getAgentCapabilities(model));
186
+
187
+ declare const computerHarness: {
188
+ execute(actions: unknown[]): Promise<void>;
189
+ screenshot(): Promise<string>;
190
+ };
191
+
192
+ await generateText({
193
+ model,
194
+ prompt: "Inspect the project and the current browser state.",
195
+ maxSteps: 4,
196
+ toolApprovalPolicy: () => ({ approved: true }),
28
197
  tools: {
29
- search: openAIToolSearchTool()
198
+ search: openAIToolSearchTool(),
199
+ computer: openAIComputerTool({
200
+ async execute({ actions }) {
201
+ await computerHarness.execute(actions);
202
+ return {
203
+ type: "computer_screenshot",
204
+ image_url: await computerHarness.screenshot()
205
+ };
206
+ }
207
+ }),
208
+ shell: openAIShellTool({
209
+ rootDir: process.cwd(),
210
+ timeoutMs: 10_000,
211
+ environment: {
212
+ type: "local",
213
+ skills: [
214
+ {
215
+ name: "repo-conventions",
216
+ description: "Repository-specific implementation rules",
217
+ path: ".agents/skills/repo-conventions"
218
+ }
219
+ ]
220
+ }
221
+ })
30
222
  }
31
223
  });
32
224
  ```
33
225
 
226
+ Local and hosted shell are deliberately separate:
227
+
228
+ - `openAIShellTool()` runs commands through an app-owned local callback or process and accepts only `environment.type: "local"`.
229
+ - `openAIHostedShellTool()` sends `container_auto` or `container_reference` to OpenAI. It never re-executes hosted commands in the local process.
230
+
231
+ Hosted containers have no outbound network access by default. Enabling it requires both an organization allowlist and a request-level `network_policy`. The request may only narrow the organization policy:
232
+
233
+ ```ts
234
+ import { openAIHostedShellTool } from "@zhivex-ai/openai";
235
+
236
+ const hostedShell = openAIHostedShellTool({
237
+ allowedCallers: ["direct", "programmatic"],
238
+ environment: {
239
+ type: "container_auto",
240
+ skills: [
241
+ { type: "skill_reference", skill_id: "skill_123", version: "latest" }
242
+ ],
243
+ network_policy: {
244
+ type: "allowlist",
245
+ allowed_domains: ["api.example.com"],
246
+ domain_secrets: [
247
+ {
248
+ domain: "api.example.com",
249
+ name: "API_TOKEN",
250
+ value: process.env.EXAMPLE_API_TOKEN!
251
+ }
252
+ ]
253
+ }
254
+ }
255
+ });
256
+ ```
257
+
258
+ Treat every allowlisted domain as an exfiltration boundary. Prompt injection can cause a shell workflow to send data or injected domain secrets outward, so allow only domains you trust and that an attacker cannot use as a data receiver. See OpenAI's [Hosted Shell network and safety guidance](https://developers.openai.com/api/docs/guides/tools-shell#network-access).
259
+
34
260
  Repository and full documentation:
35
261
 
36
262
  - <https://github.com/Zhivex/zhivex-ai-sdk>
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import { type CallableProviderAdapter, type JsonValue, type ProviderAdapter, type RealtimeConnectionFactory, type ToolDefinition } from "@zhivex-ai/core";
2
+ import { type AudioResponseLimits, type CallableProviderAdapter, type JsonValue, type ProviderAdapter, type RealtimeConnectionFactory, type ToolDefinition } from "@zhivex-ai/core";
3
3
  export interface OpenAIProviderOptions {
4
4
  apiKey?: string;
5
5
  baseURL?: string;
@@ -7,6 +7,7 @@ export interface OpenAIProviderOptions {
7
7
  realtimeURL?: string;
8
8
  browserTokenURL?: string;
9
9
  realtimeConnectionFactory?: RealtimeConnectionFactory;
10
+ responseLimits?: AudioResponseLimits;
10
11
  }
11
12
  export interface OpenAIWebSearchToolConfig {
12
13
  type?: "web_search" | "web_search_2025_08_26";
@@ -47,6 +48,7 @@ type OpenAIRemoteMcpToolSharedConfig = {
47
48
  authorization?: string;
48
49
  require_approval?: OpenAIMcpRequireApproval;
49
50
  allowed_tools?: OpenAIMcpAllowedTools;
51
+ allowed_callers?: OpenAIProgrammaticToolCaller[];
50
52
  };
51
53
  export type OpenAIRemoteMcpToolConfig = (OpenAIRemoteMcpToolSharedConfig & {
52
54
  server_url: string;
@@ -60,12 +62,26 @@ export interface OpenAIComputerUseToolConfig {
60
62
  display_width?: number;
61
63
  display_height?: number;
62
64
  }
65
+ export interface OpenAIComputerCallInput {
66
+ actions: JsonValue[];
67
+ }
68
+ export interface OpenAIComputerScreenshotOutput {
69
+ type: "computer_screenshot";
70
+ image_url: string;
71
+ detail?: "original";
72
+ }
73
+ export interface OpenAIComputerToolConfig {
74
+ name?: string;
75
+ requiresApproval?: boolean;
76
+ execute: (input: OpenAIComputerCallInput) => Promise<OpenAIComputerScreenshotOutput> | OpenAIComputerScreenshotOutput;
77
+ }
63
78
  export interface OpenAICodeInterpreterToolConfig {
64
79
  container: string | {
65
80
  type: "auto";
66
81
  memory_limit?: "1g" | "4g" | "16g" | "64g";
67
82
  file_ids?: string[];
68
83
  };
84
+ allowed_callers?: OpenAIProgrammaticToolCaller[];
69
85
  }
70
86
  export interface OpenAIShellToolConfig {
71
87
  name?: string;
@@ -73,12 +89,56 @@ export interface OpenAIShellToolConfig {
73
89
  rootDir?: string;
74
90
  timeoutMs?: number;
75
91
  maxOutputLength?: number;
76
- execute?: (input: OpenAIShellToolInput) => Promise<OpenAIShellToolOutput> | OpenAIShellToolOutput;
92
+ allowedCallers?: OpenAIProgrammaticToolCaller[];
93
+ environment?: OpenAILocalShellEnvironment;
94
+ execute?: (input: OpenAIShellToolInput) => Promise<OpenAIShellToolOutput | OpenAIShellToolOutput[]> | OpenAIShellToolOutput | OpenAIShellToolOutput[];
95
+ }
96
+ export type OpenAIHostedShellEnvironment = {
97
+ type: "container_auto";
98
+ skills?: Array<{
99
+ type: "skill_reference";
100
+ skill_id: string;
101
+ version?: number | "latest";
102
+ }>;
103
+ network_policy?: OpenAIHostedShellNetworkPolicy;
104
+ } | {
105
+ type: "container_reference";
106
+ container_id: string;
107
+ skills?: Array<{
108
+ type: "skill_reference";
109
+ skill_id: string;
110
+ version?: number | "latest";
111
+ }>;
112
+ network_policy?: OpenAIHostedShellNetworkPolicy;
113
+ };
114
+ export interface OpenAIHostedShellNetworkPolicy {
115
+ type: "allowlist";
116
+ allowed_domains: string[];
117
+ domain_secrets?: Array<{
118
+ domain: string;
119
+ name: string;
120
+ value: string;
121
+ }>;
122
+ }
123
+ export interface OpenAILocalShellEnvironment {
124
+ type: "local";
125
+ skills?: Array<{
126
+ name: string;
127
+ description?: string;
128
+ path: string;
129
+ }>;
130
+ }
131
+ export type OpenAIShellEnvironment = OpenAIHostedShellEnvironment | OpenAILocalShellEnvironment;
132
+ export interface OpenAIHostedShellToolConfig {
133
+ environment: OpenAIHostedShellEnvironment;
134
+ allowedCallers?: OpenAIProgrammaticToolCaller[];
77
135
  }
78
136
  export interface OpenAIShellToolInput {
79
137
  command?: string;
80
138
  action?: {
81
139
  command?: string;
140
+ commands?: string[];
141
+ timeout_ms?: number;
82
142
  max_output_length?: number;
83
143
  maxOutputLength?: number;
84
144
  };
@@ -91,6 +151,7 @@ export interface OpenAIShellToolOutput {
91
151
  outcome: {
92
152
  type: "exit" | "timeout";
93
153
  exitCode?: number;
154
+ exit_code?: number;
94
155
  };
95
156
  maxOutputLength?: number;
96
157
  }
@@ -102,6 +163,7 @@ export interface OpenAIApplyPatchOperation {
102
163
  export interface OpenAIApplyPatchToolConfig {
103
164
  name?: string;
104
165
  rootDir?: string;
166
+ allowedCallers?: OpenAIProgrammaticToolCaller[];
105
167
  applyOperation: (operation: OpenAIApplyPatchOperation) => Promise<OpenAIApplyPatchToolOutput> | OpenAIApplyPatchToolOutput;
106
168
  }
107
169
  export interface OpenAIApplyPatchToolInput {
@@ -114,6 +176,19 @@ export interface OpenAIApplyPatchToolOutput {
114
176
  export interface OpenAIToolSearchToolConfig {
115
177
  [key: string]: unknown;
116
178
  }
179
+ export type OpenAIProgrammaticToolCaller = "direct" | "programmatic";
180
+ export interface OpenAIProgrammaticToolOptions {
181
+ allowedCallers?: OpenAIProgrammaticToolCaller[];
182
+ outputSchema?: z.ZodTypeAny;
183
+ }
184
+ export interface OpenAIPromptCacheOptions {
185
+ mode?: "implicit" | "explicit";
186
+ ttl?: "30m";
187
+ }
188
+ export interface OpenAIMultiAgentOptions {
189
+ enabled: boolean;
190
+ max_concurrent_subagents?: number;
191
+ }
117
192
  export interface OpenAIMcpApprovalRequest {
118
193
  type: "mcp_approval_request";
119
194
  id: string;
@@ -145,16 +220,34 @@ export interface OpenAIMcpListTools {
145
220
  server_label?: string;
146
221
  tools?: JsonValue;
147
222
  }
223
+ export interface OpenAIPromptCacheBreakpointData {
224
+ type: "prompt_cache_breakpoint";
225
+ mode: "explicit";
226
+ }
227
+ export interface OpenAIResponsesOutputData {
228
+ type: "responses_output";
229
+ items: JsonValue[];
230
+ }
148
231
  export type OpenAIProviderData = {
149
232
  responseId: string;
150
- } | OpenAIMcpApprovalRequest | OpenAIMcpApprovalResponse | OpenAIMcpCall | OpenAIMcpListTools;
233
+ } | OpenAIMcpApprovalRequest | OpenAIMcpApprovalResponse | OpenAIMcpCall | OpenAIMcpListTools | OpenAIPromptCacheBreakpointData | OpenAIResponsesOutputData;
151
234
  export interface OpenAILanguageModelOptions {
235
+ apiMode?: "auto" | "chat" | "responses";
236
+ headers?: Record<string, string>;
237
+ betas?: string[];
152
238
  top_p?: number;
153
239
  frequency_penalty?: number;
154
240
  presence_penalty?: number;
155
241
  stop?: string | string[];
156
242
  seed?: number;
157
243
  user?: string;
244
+ safety_identifier?: string;
245
+ prompt_cache_key?: string;
246
+ prompt_cache_options?: OpenAIPromptCacheOptions;
247
+ prompt_cache_retention?: "in_memory" | "24h";
248
+ multi_agent?: OpenAIMultiAgentOptions;
249
+ include?: string[];
250
+ store?: boolean;
158
251
  tool_choice?: "none" | "auto" | "required" | {
159
252
  type: "function";
160
253
  function: {
@@ -170,9 +263,14 @@ export declare const openAIWebSearchTool: (config?: OpenAIWebSearchToolConfig) =
170
263
  export declare const openAIFileSearchTool: (config?: OpenAIFileSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
171
264
  export declare const openAICodeInterpreterTool: (config: OpenAICodeInterpreterToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
172
265
  export declare const openAIToolSearchTool: (config?: OpenAIToolSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
266
+ export declare const openAIProgrammaticToolCallingTool: () => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
267
+ export declare const openAIProgrammaticTool: <TSchema extends z.ZodTypeAny, TResult>(definition: ToolDefinition<TSchema, TResult>, options?: OpenAIProgrammaticToolOptions) => ToolDefinition<TSchema, TResult>;
173
268
  export declare const openAIRemoteMcpTool: (config: OpenAIRemoteMcpToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
174
269
  export declare const openAIMcpApprovalResponse: (response: Omit<OpenAIMcpApprovalResponse, "type">) => import("@zhivex-ai/core").ContentPart;
270
+ export declare const openAIPromptCacheBreakpoint: () => import("@zhivex-ai/core").ContentPart;
175
271
  export declare const openAIComputerUseTool: (config: OpenAIComputerUseToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
272
+ export declare const openAIComputerTool: (config: OpenAIComputerToolConfig) => ToolDefinition<z.ZodType<OpenAIComputerCallInput>, JsonValue>;
273
+ export declare const openAIHostedShellTool: (config: OpenAIHostedShellToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
176
274
  export declare const openAIShellTool: (config?: OpenAIShellToolConfig) => ToolDefinition<z.ZodType<OpenAIShellToolInput>, JsonValue>;
177
275
  export declare const openAIApplyPatchTool: (config: OpenAIApplyPatchToolConfig) => ToolDefinition<z.ZodType<OpenAIApplyPatchToolInput>, JsonValue>;
178
276
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}