/**
 * Sandbox API Context Setup
 *
 * Wires up the ServiceContext for api-core in the sandbox environment.
 * Uses in-memory providers and simplified configuration.
 *
 * @module infrastructure/api/context
 */
import type { ApiConfig } from '@playcademy/api-core/config';
import type { ServiceContext } from '@playcademy/api-core/types';
import type { Database } from '@playcademy/data/types';
export interface SandboxContextOptions {
    /** Database instance (from PGlite) */
    db: Database;
    /** Port the sandbox server runs on */
    port?: number;
    /** Additional config overrides */
    config?: Partial<ApiConfig>;
}
/**
 * Create the ServiceContext for sandbox.
 *
 * The context is created once and reused across requests.
 * Call `resetSandboxContext()` to force recreation (useful for testing).
 *
 * @param options - Configuration options including database instance.
 */
export declare function createSandboxContext(options: SandboxContextOptions): ServiceContext;
/**
 * Get the cached ServiceContext.
 *
 * @throws Error if context hasn't been created yet.
 */
export declare function getSandboxContext(): ServiceContext;
/**
 * Reset the cached context (for testing or hot reload).
 */
export declare function resetSandboxContext(): void;
