import { Options, ResultPromise } from 'execa'; declare const ACCOUNT_TYPE_OTHER = "other"; declare const ACCOUNT_TYPE_PERSONAL = "personal"; declare const ACCOUNT_TYPE_PRO = "pro"; declare const ACCOUNT_TYPE_ENTERPRISE = "enterprise"; declare const ACCOUNT_TYPE_FREE = "free"; declare const SUPPORTED_MODES: string[]; interface IdleTimeoutOptions { idleTimeout?: number; } /** Run a command, with arguments being an array */ declare const run: (file: string, args?: string[] | object, options?: Options & IdleTimeoutOptions) => ResultPromise; type RunnerMode = (typeof SUPPORTED_MODES)[number]; type RunnerConfig = { id: string; sessionId: string; accountType: AccountType; model?: string; runner: string; useGateway: boolean; hasRepo: boolean; fastInit: boolean; sessionHistoryContext: HistoryContextEntry[]; siteContext: SiteContextEntry[]; modelVersionOverrides: ModelVersionOverrides; sha?: string; runSha: string; enforcedAICreditsRemaining?: number; siteId?: string; accountId: string; site?: Site; deployAlias?: string; dbConnectionString?: string; previousSession?: { nativeSessionId: string; agent: string; }; assetMap?: Record; } & ({ mode: Exclude; prompt: string; } | { mode: 'redeploy'; }); type Site = { id: string; published_deploy?: { id: string; }; }; type AccountType = typeof ACCOUNT_TYPE_OTHER | typeof ACCOUNT_TYPE_PERSONAL | typeof ACCOUNT_TYPE_PRO | typeof ACCOUNT_TYPE_ENTERPRISE | typeof ACCOUNT_TYPE_FREE; type HistoryContextEntry = { request: string; response: string; }; type SiteContextEntry = { site_context: string; }; type ModelVersionOverrides = { codex?: AgentVersionOverride; claude?: AgentVersionOverride; gemini?: AgentVersionOverride; }; type AgentVersionOverride = Record; interface Context { constants: { FUNCTIONS_DIST: string; NETLIFY_API_HOST: string; NETLIFY_API_TOKEN?: string; SITE_ID?: string; URL?: string; }; utils: { run: typeof run; }; } interface PipelineOptions { config: RunnerConfig; apiToken?: string; cliPath?: string; cwd?: string; filter?: string; isHotFollowUp?: boolean; enqueuedAt?: number; tracing?: { exporterUrl?: string; traceparent?: string; }; } declare const runPipeline: ({ config, apiToken, cliPath, cwd, filter, isHotFollowUp, enqueuedAt, tracing, }: PipelineOptions) => Promise; export { type Context, type PipelineOptions, runPipeline };