import { compileContext as defaultCompileContext, type ContextCompileInput, type ContextPacket, type ContextPacketRecord } from '@jungjaehoon/mama-core'; import type { Envelope } from '../envelope/types.js'; export interface ContextCompileStatement { run: (...args: unknown[]) => unknown; get: (...args: unknown[]) => unknown; all: (...args: unknown[]) => unknown[]; } export interface ContextCompileServiceAdapter { prepare: (sql: string) => ContextCompileStatement; transaction?: (fn: () => T) => T; } export type ContextCompileCaller = 'http' | 'gateway' | string; export interface CompileAndPersistContextRequest { caller: ContextCompileCaller; envelope: Envelope; input: ContextCompileInput; modelRunId?: string | null; parentModelRunId?: string | null; deadlineMs?: number; signal?: AbortSignal; } export interface CompileAndPersistContextResult { packet: ContextPacket; record: ContextPacketRecord; modelRunId: string; parentModelRunId: string | null; } export interface ContextCompileService { compileAndPersistContext(request: CompileAndPersistContextRequest): Promise; } export interface ContextCompileServiceOptions { memoryAdapter: ContextCompileServiceAdapter; compileContext?: typeof defaultCompileContext; now?: () => number; childModelRunId?: (request: CompileAndPersistContextRequest) => string; packetId?: (request: CompileAndPersistContextRequest) => string; logger?: { error: (...args: unknown[]) => void; }; } export declare class ContextCompileServiceError extends Error { readonly status: number; readonly code: string; constructor(status: number, code: string, message: string); } export declare function createContextCompileService(options: ContextCompileServiceOptions): ContextCompileService; //# sourceMappingURL=context-compile-service.d.ts.map