import type { SandboxClient, SandboxClientOptions, SandboxSessionState } from '@openai/agents-core/sandbox'; type ActivityFunction = (...args: any[]) => Promise; /** * A named sandbox client provider for Temporal Workflows. * * Wraps a real `SandboxClient` with a unique name so multiple sandbox * backends can be registered on a single Temporal Worker. Each provider gets * its own set of Activities whose names are prefixed with the provider name. * Live sessions are cached by session id; any Worker can serve any session's * Activities because a cache miss is self-healed via `client.resume()`. * * On the Worker side, pass providers to the plugin: * * ```ts * const plugin = new OpenAIAgentsPlugin({ * modelProvider, * sandboxClientProviders: [new SandboxClientProvider('local', new UnixLocalSandboxClient())], * }); * ``` * * On the Workflow side, reference a provider by name via * `temporalSandboxClient` from `@temporalio/openai-agents/workflow`: * * ```ts * runConfig: { sandbox: { client: temporalSandboxClient('local') } } * ``` * * @experimental Sandbox support is experimental and may change without notice. */ export declare class SandboxClientProvider { readonly name: string; private readonly client; private readonly _sessions; private readonly _resuming; private _resolvableWorkerEnvVars; private _workerEnvVarsConfigured; /** @internal */ _addTemporalSpans: boolean; constructor(name: string, client: SandboxClient); _setResolvableWorkerEnvVars(names: readonly string[]): void; private rehydrateState; private session; private providerState; private sessionResult; private editor; _getActivities(): Record; private withSpan; } export {};