import { AuthenticationState, UntypedAuthenticationStateData } from "./types";
import { ChangeIdentifier } from "../change";
export declare function getInviteURL(url?: string): URL;
export interface InviteeStateOptionsData {
    inviteUrl?: string;
    inviteAnonymous?: boolean;
    inviteRepeating?: boolean;
    inviteAutoAccept?: boolean;
    inviteRedirectUrl?: string;
    inviteChange?: ChangeIdentifier;
}
export interface InviteeStateData extends InviteeStateOptionsData {
    inviteSecretHashed: string;
    inviteUrl: string;
}
export interface InviteeStateOptions extends UntypedAuthenticationStateData, InviteeStateOptionsData {
}
export interface InviteeState extends AuthenticationState, InviteeStateData {
}
export declare function addInviteeState(data: InviteeStateOptions): Promise<InviteeState>;
export interface GetInviteeOptions {
    stateId: string;
    token: string;
}
export declare function getInviteeState({ stateId, token }: GetInviteeOptions): Promise<InviteeState | undefined>;
export declare function isInviteeState(state: AuthenticationState): state is InviteeState;
export declare function getExchangeStateURL(stateId?: string): Promise<string | undefined>;
