/**
 * TokenStore — Focused responsibility: token persistence.
 *
 * Owns all read/write/clear operations on a `GoodVibesTokenStore`. Consumers
 * that only need token storage can interact with this class directly rather
 * than going through the full auth client.
 */
import type { GoodVibesTokenStore } from './types.js';
export declare class TokenStore {
    #private;
    constructor(store: GoodVibesTokenStore);
    /** Return the current token, or null if none is stored. */
    getToken(): Promise<string | null>;
    /** Persist a new token, or clear storage when null. */
    setToken(token: string | null): Promise<void>;
    /**
     * Persist a new token alongside its expiry timestamp (unix ms).
     * Falls back to `setToken` when the store does not implement `setTokenEntry`.
     */
    setTokenEntry(token: string | null, expiresAt?: number): Promise<void>;
    /**
     * Return the current token entry, including optional expiry.
     * Falls back to token-only when the store does not implement `getTokenEntry`.
     */
    getTokenEntry(): Promise<{
        token: string | null;
        expiresAt?: number;
    }>;
    /** Clear the stored token. */
    clearToken(): Promise<void>;
    /** Return true when a non-empty token is currently stored. */
    hasToken(): Promise<boolean>;
    /** Expose the underlying store for integrations that need direct storage access. */
    get store(): GoodVibesTokenStore;
}
//# sourceMappingURL=token-store.d.ts.map