import type { INode, IUser } from 'n8n-workflow';
declare const validOptions: readonly ['notSupported', 'memory', 'manually'];
export type AuthenticationChatOption = 'none' | 'basicAuth' | 'n8nUserAuth';
export type LoadPreviousSessionChatOption = (typeof validOptions)[number];
export type ChatFrameIdentity = {
    visitor: IUser;
    authToken: string;
};
export type ChatShellSession = {
    expiresIn: number;
};
export type ChatShellCredentialRow = {
    key: string;
    id: string;
    name: string;
    connected: boolean;
    initial: string;
    iconUrl?: string;
    authorizationUrl?: string;
    revokeUrl?: string;
    resolverId?: string;
    account?: string;
};
export type ChatShellViewModel = {
    credentials: ChatShellCredentialRow[];
    total: number;
    connectedCount: number;
    useDialog: boolean;
    footerText: string;
};
export declare function assertValidLoadPreviousSessionOption(value: string | undefined, node: INode): asserts value is LoadPreviousSessionChatOption | undefined;
export {};
