import type { LroError, Operation, OperationStatus, RestorableOperationState, OperationState } from "./models.js"; /** * Deserializes the state */ export declare function deserializeState>(serializedState: string): RestorableOperationState; /** * Initiates the long-running operation. */ export declare function initOperation>(inputs: { init: Operation["init"]; getOperationStatus: (inputs: { response: TResponse; state: RestorableOperationState; operationLocation?: string; }) => OperationStatus; processResult?: (result: TResponse, state: TState) => Promise; withOperationLocation?: (operationLocation: string, isUpdated: boolean) => void; setErrorAsResult: boolean; }): Promise>; /** Polls the long-running operation. */ export declare function pollOperation, TOptions>(inputs: { poll: Operation["poll"]; state: RestorableOperationState; getOperationStatus: (response: TResponse, state: RestorableOperationState) => OperationStatus; getResourceLocation: (response: TResponse, state: RestorableOperationState) => string | undefined; isOperationError: (error: Error) => boolean; getPollingInterval?: (response: TResponse) => number | undefined; setDelay: (intervalInMs: number) => void; getOperationLocation?: (response: TResponse, state: RestorableOperationState) => string | undefined; withOperationLocation?: (operationLocation: string, isUpdated: boolean) => void; processResult?: (result: TResponse, state: TState) => Promise; getError?: (response: TResponse) => LroError | undefined; updateState?: (state: TState, lastResponse: TResponse) => void; isDone?: (lastResponse: TResponse, state: TState) => boolean; setErrorAsResult: boolean; options?: TOptions; }): Promise; //# sourceMappingURL=operation.d.ts.map