/**
 * Display a text input field. This is just a standard HTML input field with minimal markup to fit the
 * visual styles of the other components. Note that events "bubble" from the input field to the container,
 * so you can subscribe to the same DOM events (input, blur, etc) that a normal input would emit.
 *
 * ```ts
 * <verdocs-text-input type="text" label="Name" placeholder="Enter your name..." value="" />
 * ```
 */
export declare class VerdocsTextInput {
    private inputEl;
    hostEl: HTMLElement;
    /**
     * The initial value for the input field.
     */
    value: string;
    /**
     * The label for the field.
     */
    label: string;
    /**
     * The placeholder for the field.
     */
    placeholder: string;
    /**
     * If desired, the autocomplete attribute to set.
     */
    autocomplete: string;
    /**
     * If supplied, a help icon will be displayed to provide the user more information.
     */
    helpText: string;
    /**
     * If set, a clear button will be displayed.
     */
    clearable: boolean;
    /**
     * If set, a copy-to-clipboard button will be displayed. NOTE: A field may not be
     * both clearable and copyable. If both properties are set to true, copyable will
     * be ignored.
     */
    copyable: boolean;
    /**
     * The type of field to render. Only text-type fields are allowed here for the current styling. Additional types
     * (e.g. a date picker) will be supported by other controls in the future.
     */
    type: 'text' | 'password' | 'email' | 'number' | 'search' | 'tel' | 'url';
    /**
     * Should the field be disabled?
     */
    disabled: boolean;
    /**
     * Should the field be required?
     */
    required: boolean;
    showingPw: boolean;
    copyToClipboard(): void;
    render(): any;
}
