import type { RouterMetadataInput, VirtualRouterConfig } from '../../types.js';
import type { ProviderRegistry } from '../../provider-registry.js';
export type AntigravityAliasLeaseStore = Map<string, {
    sessionKey: string;
    lastSeenAt: number;
}>;
export type AntigravitySessionAliasStore = Map<string, string>;
export type AntigravityLeasePersistenceState = {
    loadedOnce: boolean;
    loadedMtimeMs: number | null;
    flushTimer: ReturnType<typeof setTimeout> | null;
};
export declare function resolveAntigravityAliasReuseCooldownMs(config: VirtualRouterConfig): number;
export declare function hydrateAntigravityAliasLeaseStoreIfNeeded(options: {
    force?: boolean;
    leaseStore: AntigravityAliasLeaseStore;
    persistence: AntigravityLeasePersistenceState;
    aliasReuseCooldownMs: number;
}): void;
export declare function recordAntigravitySessionLease(options: {
    metadata: RouterMetadataInput;
    providerKey: string;
    sessionKey: string | undefined;
    providerRegistry: ProviderRegistry;
    leaseStore: AntigravityAliasLeaseStore;
    sessionAliasStore: AntigravitySessionAliasStore;
    persistence: AntigravityLeasePersistenceState;
    aliasReuseCooldownMs: number;
    commitSessionBinding: boolean;
    debug?: {
        log?: (...args: any[]) => void;
    };
}): void;
