/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { PropType } from 'vue';
/**
 * Represents the props of the kendo UI for Vue FloatingLabel component.
 */
export interface FloatingLabelProps {
    /**
     * Represent the `for` property, which will be set to the `label` element.
     */
    editorId?: string;
    /**
     * Specifies the value of the editor. Used to define if the editor is empty.
     */
    editorValue?: any;
    /**
     * Specifies the placeholder of the editor. Used to define if the editor is empty.
     */
    editorPlaceholder?: string;
    /**
     * Specifies if the validity of the editor. Used to define the editor is invalid.
     */
    editorValid?: boolean;
    /**
     * Specifies if the editor is disabled.
     */
    editorDisabled?: boolean;
    /**
     * Adds a floating label that describes the editor.
     */
    label?: string;
    /**
     * Sets the `class` of the label element.
     */
    labelClass?: string;
    /**
     * Specifies the direction of the label.
     */
    dir?: string;
    /**
     * Represents the id of the label element.
     * The value should be also set to the editor's `ariaLabelledBy` property.
     * Can be used when the editor is not containing native form element.
     */
    id?: string;
    /**
     * If enabled, marks the label as optional.
     */
    optional?: boolean;
    /**
     * Sets the label in a focused position.
     */
    focused?: boolean;
}
/**
 * @hidden
 */
export interface FloatingLabelComputed {
    [key: string]: any;
    spanClassNames: object;
    labelClassNames: object;
}
/**
 * @hidden
 */
declare const FloatingLabel: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    label: PropType<string>;
    labelClass: PropType<string>;
    editorId: PropType<string>;
    editorValue: PropType<any>;
    editorPlaceholder: PropType<string>;
    editorValid: {
        type: PropType<boolean>;
        default: any;
    };
    editorDisabled: PropType<boolean>;
    id: PropType<string>;
    optional: PropType<boolean>;
    focused: {
        type: PropType<boolean>;
        default: any;
    };
    dir: PropType<string>;
}>, {
    kendoLocalizationService: {};
}, {
    currentFocused: boolean;
}, {
    computedFocused(): any;
    spanClassNames(): FloatingLabelComputed['spanClassNames'];
    labelClassNames(): FloatingLabelComputed['labelClassNames'];
}, {
    handleFocus(): void;
    handleBlur(): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    label: PropType<string>;
    labelClass: PropType<string>;
    editorId: PropType<string>;
    editorValue: PropType<any>;
    editorPlaceholder: PropType<string>;
    editorValid: {
        type: PropType<boolean>;
        default: any;
    };
    editorDisabled: PropType<boolean>;
    id: PropType<string>;
    optional: PropType<boolean>;
    focused: {
        type: PropType<boolean>;
        default: any;
    };
    dir: PropType<string>;
}>> & Readonly<{}>, {
    focused: boolean;
    editorValid: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export { FloatingLabel };
