import { ClientStorage } from './storage';
export interface LoginTransaction {
    nonce: string;
    scope: string;
    audience: string;
    appState?: any;
    code_verifier: string;
    redirect_uri?: string;
    organization?: string;
    state?: string;
    response_type: 'code';
}
export interface ConnectAccountTransaction {
    appState?: any;
    audience?: string;
    auth_session: string;
    code_verifier: string;
    redirect_uri: string;
    scope?: string;
    state: string;
    connection: string;
    response_type: 'connect_code';
}
export declare class TransactionManager {
    private storage;
    private clientId;
    private cookieDomain?;
    private storageKey;
    constructor(storage: ClientStorage, clientId: string, cookieDomain?: string | undefined);
    create<T extends Object = LoginTransaction>(transaction: T): void;
    get<T extends Object = LoginTransaction>(): T | undefined;
    remove(): void;
}
