export declare class FieldLabel {
    element: HTMLElement;
    private parentBalFieldElement;
    /**
     * PUBLIC PROPERTY API
     * ------------------------------------------------------
     */
    /**
     * The value of the for attribute must be a single id for a labeled
     * form-related element in the same document as the <label> element.
     * So, any given label element can be associated with only one form control.
     */
    htmlFor?: string;
    /**
     * If `true` the form control needs to be filled. If it is set to
     * `false` an optional label is added to the label..
     */
    required: boolean;
    /**
     * If `true` the component gets a valid green style.
     */
    valid?: boolean;
    /**
     * If `true` the component gets a invalid red style.
     */
    invalid?: boolean;
    /**
     * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants.
     */
    disabled?: boolean;
    /**
     * If `true` the element can not mutated, meaning the user can not edit the control.
     */
    readonly?: boolean;
    /**
     * Defines the size of the font. Default is like a heading 5 and small is used
     * with the form fields.
     */
    size: BalProps.BalFieldLabelSize;
    /**
     * Defines the font weight of the label.
     */
    weight: BalProps.BalFieldLabelWeight;
    /**
     * LIFECYCLE
     * ------------------------------------------------------
     */
    componentDidLoad(): void;
    disconnectedCallback(): void;
    /**
     * RENDER
     * ------------------------------------------------------
     */
    render(): any;
}
