export type AuthRetryOutcome = { status: "ok"; value: T; } | { status: "failed"; error: unknown; /** The call was attempted a second time with fresh credentials. */ retried: boolean; /** Auth failure, but a write had gone out, so no retry was attempted. */ retryBlockedByWrite: boolean; }; /** * Run `operation`, retrying once with refreshed credentials if QuickBooks * rejected the token and nothing was written on the failed attempt. * * `refreshCredentials` is injected rather than imported so the decision logic * can be exercised without a live credential provider. */ export declare function runWithAuthRetry(operation: () => Promise, refreshCredentials: () => void): Promise>; //# sourceMappingURL=auth-retry.d.ts.map