import { type PropType } from 'vue';
export interface HighlightTerm {
    text: string;
    color?: string;
}
export declare const Highlight: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    highlight: {
        type: PropType<string | string[] | HighlightTerm[]>;
        required: true;
    };
    color: {
        type: StringConstructor;
        default: undefined;
    };
    highlightStyles: {
        type: PropType<Record<string, any> | ((theme: any) => Record<string, any>)>;
        default: undefined;
    };
    wholeWord: {
        type: BooleanConstructor;
        default: undefined;
    };
    caseInsensitive: {
        type: BooleanConstructor;
        default: undefined;
    };
    accentInsensitive: {
        type: BooleanConstructor;
        default: undefined;
    };
    component: {
        type: StringConstructor;
        default: undefined;
    };
    span: {
        type: BooleanConstructor;
        default: boolean;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
    [key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    highlight: {
        type: PropType<string | string[] | HighlightTerm[]>;
        required: true;
    };
    color: {
        type: StringConstructor;
        default: undefined;
    };
    highlightStyles: {
        type: PropType<Record<string, any> | ((theme: any) => Record<string, any>)>;
        default: undefined;
    };
    wholeWord: {
        type: BooleanConstructor;
        default: undefined;
    };
    caseInsensitive: {
        type: BooleanConstructor;
        default: undefined;
    };
    accentInsensitive: {
        type: BooleanConstructor;
        default: undefined;
    };
    component: {
        type: StringConstructor;
        default: undefined;
    };
    span: {
        type: BooleanConstructor;
        default: boolean;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
}>> & Readonly<{}>, {
    color: string;
    span: boolean;
    classNames: Function | Record<string, any>;
    styles: Function | Record<string, any>;
    component: string;
    vars: Function | Record<string, any>;
    unstyled: boolean;
    wholeWord: boolean;
    caseInsensitive: boolean;
    accentInsensitive: boolean;
    highlightStyles: Record<string, any> | ((theme: any) => Record<string, any>);
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
