import { RichTextFeature } from '@bluepic/types';
type __VLS_Props = {
    userAgentRichText?: boolean;
    multiline?: boolean;
    maxLength?: number;
    maxLengthPerLine?: number;
    maxLines?: number;
};
type __VLS_PublicProps = __VLS_Props & {
    'modelValue': RichTextFeature[];
    'selection': {
        start: number;
        length: number;
    } | undefined;
};
declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {
    richTextInstance: import("vue").Ref<import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
        value: RichTextFeature[][];
        selection?: {
            start: number;
            length: number;
        };
        userAgentRichText: boolean;
        renderFeatureInlineStyle: (feature: RichTextFeature["format"]) => import("vue").StyleValue;
        maxLength: number;
        maxLengthPerLine: number;
        maxLines: number;
        multiline?: boolean;
    }> & Readonly<{
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:visible-value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:selection"?: ((...args: any[]) => any) | undefined;
        "onUpdate:warning-message"?: ((...args: any[]) => any) | undefined;
        "onUpdate:focus"?: ((...args: any[]) => any) | undefined;
    }>, {
        applyFormat: (selectionStart: number, selectionLength: number, format: RichTextFeature["format"], select?: boolean) => void;
        resolveFeatures: (startIndex: number, length: number) => RichTextFeature[][];
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        "update:value": (...args: any[]) => void;
        "update:visible-value": (...args: any[]) => void;
        "update:selection": (...args: any[]) => void;
        "update:warning-message": (...args: any[]) => void;
        "update:focus": (...args: any[]) => void;
    }, import("vue").PublicProps, {
        multiline: boolean;
    }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<{
        value: RichTextFeature[][];
        selection?: {
            start: number;
            length: number;
        };
        userAgentRichText: boolean;
        renderFeatureInlineStyle: (feature: RichTextFeature["format"]) => import("vue").StyleValue;
        maxLength: number;
        maxLengthPerLine: number;
        maxLines: number;
        multiline?: boolean;
    }> & Readonly<{
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:visible-value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:selection"?: ((...args: any[]) => any) | undefined;
        "onUpdate:warning-message"?: ((...args: any[]) => any) | undefined;
        "onUpdate:focus"?: ((...args: any[]) => any) | undefined;
    }>, {
        applyFormat: (selectionStart: number, selectionLength: number, format: RichTextFeature["format"], select?: boolean) => void;
        resolveFeatures: (startIndex: number, length: number) => RichTextFeature[][];
    }, {}, {}, {}, {
        multiline: boolean;
    }> | undefined, import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
        value: RichTextFeature[][];
        selection?: {
            start: number;
            length: number;
        };
        userAgentRichText: boolean;
        renderFeatureInlineStyle: (feature: RichTextFeature["format"]) => import("vue").StyleValue;
        maxLength: number;
        maxLengthPerLine: number;
        maxLines: number;
        multiline?: boolean;
    }> & Readonly<{
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:visible-value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:selection"?: ((...args: any[]) => any) | undefined;
        "onUpdate:warning-message"?: ((...args: any[]) => any) | undefined;
        "onUpdate:focus"?: ((...args: any[]) => any) | undefined;
    }>, {
        applyFormat: (selectionStart: number, selectionLength: number, format: RichTextFeature["format"], select?: boolean) => void;
        resolveFeatures: (startIndex: number, length: number) => RichTextFeature[][];
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        "update:value": (...args: any[]) => void;
        "update:visible-value": (...args: any[]) => void;
        "update:selection": (...args: any[]) => void;
        "update:warning-message": (...args: any[]) => void;
        "update:focus": (...args: any[]) => void;
    }, import("vue").PublicProps, {
        multiline: boolean;
    }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<{
        value: RichTextFeature[][];
        selection?: {
            start: number;
            length: number;
        };
        userAgentRichText: boolean;
        renderFeatureInlineStyle: (feature: RichTextFeature["format"]) => import("vue").StyleValue;
        maxLength: number;
        maxLengthPerLine: number;
        maxLines: number;
        multiline?: boolean;
    }> & Readonly<{
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:visible-value"?: ((...args: any[]) => any) | undefined;
        "onUpdate:selection"?: ((...args: any[]) => any) | undefined;
        "onUpdate:warning-message"?: ((...args: any[]) => any) | undefined;
        "onUpdate:focus"?: ((...args: any[]) => any) | undefined;
    }>, {
        applyFormat: (selectionStart: number, selectionLength: number, format: RichTextFeature["format"], select?: boolean) => void;
        resolveFeatures: (startIndex: number, length: number) => RichTextFeature[][];
    }, {}, {}, {}, {
        multiline: boolean;
    }> | undefined>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:selection": (value: {
        start: number;
        length: number;
    } | undefined) => any;
    "update:focus": (args_0: boolean) => any;
    "update:raw-text": (args_0: string) => any;
    "update:modelValue": (value: RichTextFeature[]) => any;
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
    "onUpdate:selection"?: ((value: {
        start: number;
        length: number;
    } | undefined) => any) | undefined;
    "onUpdate:focus"?: ((args_0: boolean) => any) | undefined;
    "onUpdate:raw-text"?: ((args_0: string) => any) | undefined;
    "onUpdate:modelValue"?: ((value: RichTextFeature[]) => any) | undefined;
}>, {
    maxLength: number;
    maxLines: number;
    multiline: boolean;
    userAgentRichText: boolean;
    maxLengthPerLine: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
export default _default;
