export declare class CxCallerInitData {
    context?: CxContext;
    name?: string;
    source_system_name?: string;
    authentication_flag?: boolean;
    constructor(config: CxCallerConfig, options?: CxCallerInitData);
}
export declare class CxCallerConfig {
    endpoint: string;
    messages?: CxCallerMessages;
    constructor(options?: any);
}
export declare class CxContextPage {
    path?: string;
    referrer?: string;
    search?: string;
    title?: string;
    url?: string;
    constructor(options?: {});
}
export declare class CxContextDevice {
    id?: string;
    model?: string;
    manufacturer?: string;
    name?: string;
    type?: string;
    token?: string;
    constructor(options?: {});
}
export declare class CxContextApp {
    name?: string;
    version?: string;
    build?: string;
    constructor(options?: {});
}
export declare class CxContextLocation {
    city?: string;
    country?: string;
    latitude?: string;
    longitude?: string;
    constructor(options?: {});
}
export declare class CxContextNetwork {
    bluetooth?: boolean;
    carrier?: string;
    cellular?: boolean;
    wifi?: boolean;
    constructor(options?: {});
}
export declare class CxContextOS {
    name?: string;
    version?: string;
    constructor(options?: {});
}
export declare class CxContextReferrer {
    id?: string;
    type?: string;
    constructor(options?: {});
}
export declare class CxContext {
    ip_address?: string;
    page?: CxContextPage;
    device?: CxContextDevice;
    app?: CxContextApp;
    location?: CxContextLocation;
    network?: CxContextNetwork;
    os?: CxContextOS;
    referrer?: CxContextReferrer;
    timestamp?: Date | string | number;
    timezone?: string;
    constructor(config: CxCallerConfig, options: CxContext);
}
export declare class CxCallBody {
    consumer_id?: string | number;
    source_system_name: string;
    transaction_id?: string | number;
    session_id?: string | number;
    authentication_flag: boolean;
    consumer_recommendation_id?: string | number;
    name: string;
    dictionary_attributes?: any;
    context?: CxContext;
    constructor(config: CxCallerConfig, options: CxCallBody, previous_data?: CxCallerInitData);
}
export declare class CxCallbacks {
    success?: Function;
    failure?: Function;
    constructor(options: CxCallbacks);
}
export declare class CxCallerMessages {
    no_body_provided?: string;
    system_name_not_provided?: string;
    name_not_provided?: string;
    authentication_flag_not_provided?: string;
    unsuccessful_setup?: string;
    successful_setup?: string;
    no_endpoint?: string;
    constructor(options?: CxCallerMessages);
}
