import type { ImageConfig, ImageOperationSubmission, ImageProvider, ImageResult } from '../types/images.js'; import type { ProviderCallContext } from '../types/lifecycle.js'; /** What one operation reads from the manager that runs it. */ export interface ImageOperationState { /** The manager's configuration. */ config: ImageConfig; /** Registered providers, by name. */ providers: ReadonlyMap; /** The manager's clock. */ now: () => Date; } /** * Runs one image operation: validates it, resolves its inputs, chooses a provider, applies the * safety policy on both sides, and checks what came back. Loaded on the first operation, so a client * that never makes images never imports it. */ export declare function runImageOperation(state: ImageOperationState, submission: ImageOperationSubmission, operationId: string, callContext: ProviderCallContext): Promise;