/** * Oneshot runner (ECS container mode). * * When the CLI starts with AGENT_MODE=oneshot (set via containerOverrides at * ECS RunTask time), it does NOT run the resident agent flow. Instead it: * getCommand(COMMAND_ID) -> executeCommand -> submitResult -> exit * * There is no AppSync subscription, no heartbeat, and no register call. * Authentication uses the short-lived oneshot token (AGENT_ONESHOT_TOKEN) * scoped to the single COMMAND_ID. The token value is never logged. */ interface OneshotEnv { commandId: string; agentId: string; tenantCode: string; projectCode: string; apiBaseUrl: string; token: string; } /** * Read and validate the oneshot environment. * Missing variables are a clear fatal error (no fallback). */ export declare function readOneshotEnv(env?: NodeJS.ProcessEnv): OneshotEnv; /** * Run exactly one command and return the process exit code * (0 = executed and submitted successfully, 1 = any failure). */ export declare function runOneshot(env?: NodeJS.ProcessEnv): Promise; /** * Entry-point wrapper used by src/index.ts: runs the oneshot flow and exits * the process with the resulting code. Any unexpected rejection is converted * into exit code 1 — a container that never exits would only be reclaimed by * the slow timeout sweep. The runner is injectable for tests. */ export declare function runOneshotFromEnv(runner?: () => Promise): Promise; export {}; //# sourceMappingURL=oneshot-runner.d.ts.map