import type { MarketrixConfig } from '../types';
interface UseWidgetProps {
    config?: MarketrixConfig;
}
export declare const useWidget: ({ config }?: UseWidgetProps) => {
    state: import("..").WidgetState;
    config: Partial<{
        widget_enabled: boolean;
        widget_appearance: "default" | "compact" | "full";
        widget_position: "bottom_left" | "bottom_right" | "top_left" | "top_right";
        widget_device: "desktop" | "mobile" | "desktop_mobile";
        widget_header: string;
        widget_body: string;
        widget_greeting: string;
        widget_feature_tell: boolean;
        widget_feature_show: boolean;
        widget_feature_do: boolean;
        widget_feature_human: boolean;
        widget_background_color: string;
        widget_text_color: string;
        widget_border_color: string;
        widget_accent_color: string;
        widget_secondary_color: string;
        widget_border_radius: string;
        widget_font_size: string;
        widget_width: string;
        widget_height: string;
        widget_shadow: string;
        widget_animation_duration: string;
        widget_fade_duration: string;
        widget_bounce_effect: boolean;
        widget_chips: {
            chip_mode: "tell" | "show" | "do";
            chip_text: string;
        }[];
    }> & {
        mtxId?: string;
        mtxKey?: string;
        mtxApp?: number;
        mtxAgent?: number;
        userId?: number;
        mtxApiHost?: string;
        widget_position_offset?: {
            x?: number;
            y?: number;
        };
        widget_position_z_index?: number;
        isPreviewMode?: boolean;
        show_widget?: boolean;
        use_screenshare?: boolean;
        agent_name?: string;
        agent_description?: string;
    } & Required<Pick<MarketrixConfig, "widget_enabled" | "widget_appearance" | "widget_position" | "widget_device" | "widget_header" | "widget_body" | "widget_greeting" | "widget_feature_tell" | "widget_feature_show" | "widget_feature_do" | "widget_feature_human" | "widget_background_color" | "widget_text_color" | "widget_border_color" | "widget_accent_color" | "widget_secondary_color" | "widget_border_radius" | "widget_font_size" | "widget_width" | "widget_height" | "widget_shadow" | "widget_animation_duration" | "widget_fade_duration" | "widget_bounce_effect" | "widget_chips">>;
    actions: {
        setState: (payload: Partial<import("..").WidgetState>) => void;
        setActiveView: (view: import("../types").WidgetView) => void;
        toggleWidget: () => void;
        closeWidget: () => void;
        setMode: (mode: import("..").InstructionType) => void;
        setLoading: (loading: boolean) => void;
        setAgentAvailable: (available: boolean) => void;
        setError: (error: string | undefined) => void;
        clearError: () => void;
        setTaskState: (payload: {
            activeTaskId: string | null;
            isTaskRunning: boolean;
            taskProgress?: import("../types").TaskProgress[];
        }) => void;
        addMessage: (message: import("..").ChatMessage) => void;
        updateMessage: (messageId: string, updates: Partial<import("..").ChatMessage>) => void;
        removeMessage: (messageId: string) => void;
        setMessages: (messages: import("..").ChatMessage[]) => void;
        resetState: () => void;
        stopTask: () => Promise<void>;
        clearChatHistory: () => void;
        sendMessage: (content: string, mode?: import("..").InstructionType, applicationId?: number, question?: string, skipUserMessage?: boolean) => Promise<void>;
    };
    shouldShow: boolean;
    isPreviewMode: boolean;
};
export {};
//# sourceMappingURL=useWidget.d.ts.map