import { c as InferCredentialSetAuth, i as AssertUniqueCredentialSetIds, p as Primitive, s as CredentialSetId, t as AnyCredentialSet } from "./CredentialSet-lUr_8nN3.mjs"; import { p as JsonObject } from "./schemas-DXcT2SRm.mjs"; import { z } from "zod"; //#region src/sandbox/schemas.d.ts declare const SandboxManifestSchema: z.ZodObject<{ manifestVersion: z.ZodLiteral<1>; type: z.ZodLiteral<"sandbox">; id: z.ZodString; name: z.ZodString; description: z.ZodOptional; workdir: z.ZodOptional; runCommands: z.ZodArray; setupCommands: z.ZodArray; credentialSets: z.ZodArray; type: z.ZodLiteral<"credentialSet">; id: z.ZodString; name: z.ZodString; description: z.ZodOptional; auth: z.ZodType>; credentialType: z.ZodEnum<{ oauth: "oauth"; manual: "manual"; }>; exposure: z.ZodOptional>; proxy: z.ZodOptional>; hostPatterns: z.ZodOptional>; injection: z.ZodOptional; basicAuth: z.ZodOptional; queryParams: z.ZodOptional; body: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>>; needsRawSecret: z.ZodOptional; }, z.core.$strip>>; env: z.ZodOptional; value: z.ZodString; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"credential">; credentialSetId: z.ZodString; key: z.ZodString; }, z.core.$strip>], "kind">>>; fileSources: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; type SandboxManifest = z.infer; //#endregion //#region src/shared/credential-bindings.d.ts interface CredentialReference { readonly credentialSetId: string; readonly key: string; } type ManifestValue = { readonly kind: 'literal'; readonly value: string; } | { readonly kind: 'credential'; readonly credentialSetId: string; readonly key: string; }; type BindingValue = string | CredentialReference; type CredentialReferenceNamespace> = Readonly<{ readonly [TCredentialKey in keyof InferCredentialSetAuth> & string]: CredentialReference }>; type BindingCredentials = TCredentialSets extends readonly AnyCredentialSet[] ? Readonly<{ readonly [TCredentialId in CredentialSetId]: CredentialReferenceNamespace }> : Record; type CredentialBindingContext = Readonly<{ credentials: Readonly>; }>; //#endregion //#region src/sandbox/types.d.ts type SandboxFileSource = Readonly<{ path: string; target?: string; }>; type SkillSource = { readonly path: string; }; type SandboxCredentialContext = CredentialBindingContext; type SandboxEnvBindingBuilder = (ctx: SandboxCredentialContext) => Readonly>; interface SandboxConfig { id?: string; name?: string; description?: string; workdir?: string; runCommands?: readonly string[]; setupCommands?: readonly string[]; credentialSets?: TCredentialSets & AssertUniqueCredentialSetIds; env?: SandboxEnvBindingBuilder; fileSources?: readonly SandboxFileSource[]; } type AnySandbox = Sandbox; //#endregion //#region src/sandbox/Sandbox.d.ts declare class Sandbox extends Primitive { #private; readonly kind: "sandbox"; readonly id: string; readonly name: string; readonly description?: string; readonly workdir: string; readonly runCommands: readonly string[]; readonly setupCommands: readonly string[]; readonly credentialSets: TCredentialSets; readonly envManifest?: Readonly>; readonly fileSourcesManifest: readonly SandboxFileSource[]; constructor(config?: SandboxConfig); configure(overrides: { name?: string; description?: string; workdir?: string; runCommands?: readonly string[]; setupCommands?: readonly string[]; env?: SandboxConfig['env']; fileSources?: SandboxConfig['fileSources']; credentialSets?: TCredentialSets; }): Sandbox; toManifest(): SandboxManifest; } //#endregion export { SkillSource as a, SandboxFileSource as i, AnySandbox as n, SandboxManifest as o, SandboxConfig as r, Sandbox as t };