import { type InkeepChatButtonProps, type InkeepCustomTriggerProps, type InkeepEmbeddedChatProps, type InkeepSearchBarProps, type InkeepWidgetBaseSettings } from '../../widgets/src/index.tsx';
type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
export type InkeepEmbedConfig = {
    componentType: 'ChatButton';
    targetElement: string;
    properties: Optional<InkeepChatButtonProps, 'baseSettings'>;
} | {
    componentType: 'EmbeddedChat';
    targetElement: string;
    properties: Optional<InkeepEmbeddedChatProps, 'baseSettings'>;
} | {
    componentType: 'SearchBar';
    targetElement: string;
    properties: Optional<InkeepSearchBarProps, 'baseSettings'>;
} | {
    componentType: 'CustomTrigger';
    targetElement: string;
    properties: Optional<InkeepCustomTriggerProps, 'baseSettings'>;
};
export declare const Inkeep: (baseSettings: InkeepWidgetBaseSettings) => {
    embed: (config: InkeepEmbedConfig) => {
        render: (props: any) => void;
        unmount: () => void;
    };
};
declare global {
    interface Window {
        Inkeep: typeof Inkeep;
    }
}
export {};
