import { Lifecycle, type ControlReadState } from './Lifecycle.js'; export interface ControlReadOptions { signal?: AbortSignal; attemptTimeoutMs?: number; retryBackoffMs?: number; } export declare function resolveControlReadOptions(options?: ControlReadOptions): Required> & Pick; /** Bounded retries for a read only. Never wrap writes or game actions in this. */ export declare class ControlRead { private readonly request; private readonly timeoutMs; private readonly backoffMs; readonly lifecycle: Lifecycle; constructor(request: (signal: AbortSignal) => Promise, timeoutMs?: number, backoffMs?: number); run(signal?: AbortSignal): Promise; private wait; }