import type { SandboxBackend } from "#public/definitions/sandbox-backend.js";
import type { VercelSandboxBootstrapUseOptions, VercelSandboxSessionUseOptions } from "#public/sandbox/vercel-sandbox.js";
import { type CreateVercelSandbox } from "#execution/sandbox/bindings/vercel-create-sdk.js";
import type { VercelCreateOptions, VercelModule } from "#execution/sandbox/bindings/vercel-sdk-types.js";
export interface CreateVercelSandboxInput {
    readonly createSandbox?: CreateVercelSandbox;
    readonly createOptions?: VercelCreateOptions;
    readonly loadSandboxModule?: () => Promise<VercelModule>;
}
/**
 * Creates the Vercel-backed sandbox backend.
 *
 * Any author-supplied `createOptions` are forwarded to Vercel's sandbox
 * create API for every fresh sandbox the framework creates (template at
 * prewarm time, session at first-time session-create). On resume
 * (`Sandbox.get`) no create happens, so they are not re-applied.
 */
export declare function createVercelSandbox(input?: CreateVercelSandboxInput): SandboxBackend<VercelSandboxBootstrapUseOptions, VercelSandboxSessionUseOptions>;
