export type CommandQueueEnqueueOptions = { warnAfterMs?: number; onWait?: (waitMs: number, queuedAhead: number) => void; taskTimeoutMs?: number; taskTimeoutProgressAtMs?: () => number | undefined; priority?: "foreground" | "normal" | "background"; }; export type CommandQueueEnqueueFn = ( task: () => Promise, opts?: CommandQueueEnqueueOptions, ) => Promise;