/**
 * Handle client caching and refresh of auth token
 */
import { AuthTokenPayload } from "@vertesia/common";
interface ComposableTokenResponse {
    rawToken: string;
    token: AuthTokenPayload;
    error: boolean;
    message?: string;
}
export declare function fetchComposableToken(getIdToken: () => Promise<string | null | undefined>, accountId?: string, projectId?: string, ttl?: number): Promise<string>;
/**
 *
 * @param accountId
 * @param projectId
 * @param ttl time to live for the token in seconds
 * @returns
 */
export declare function fetchComposableTokenFromFirebaseToken(accountId?: string, projectId?: string, ttl?: number): Promise<string>;
export declare function getComposableToken(accountId?: string, projectId?: string, initToken?: string, forceRefresh?: boolean, useInternalAuth?: boolean): Promise<ComposableTokenResponse>;
export declare class UserNotFoundError extends Error {
    email: string;
    constructor(message: string, email: string);
}
export {};
//# sourceMappingURL=composable.d.ts.map