import { type HTMLAttributes } from 'vue'; import type { ComponentProps } from 'vue-component-type-helpers'; import { type OUIAProps } from '../../helpers/ouia'; import PfButton from '../Button.vue'; interface Props extends OUIAProps, /* @vue-ignore */ HTMLAttributes { /** Unique id for the text area. Also used to generate ids for accessible labels. */ id?: string; /** Name property for the read-only filename field, defaults to `-filename`. */ name?: string; /** What type of file. Determines whether a text preview is shown and what is expected by the value (a string for 'text' and 'dataURL', or a File object otherwise). */ type?: 'text' | 'dataURL'; /** Value to be shown in the read-only filename field. */ filename?: string | null; /** Flag to allow editing of a text file's contents after it is selected from disk. */ allowEditingUploadedText?: boolean; /** Aria-label for the text area. Defaults to the `fileUpload` message. */ ariaLabel?: string; /** Text for the browse button. Defaults to the `fileUploadBrowse` message. */ browseButtonText?: string; /** Flag to disable the browse button. */ browseButtonDisabled?: boolean; /** Additional attributes for the browse button, like aria-describedby referring to helper text describing file restrictions. */ browseButtonAttrs?: ComponentProps; /** Text for the clear button. Defaults to the `fileUploadClear` message. */ clearButtonText?: string; /** Flag to disable the clear button. Defaults to true when there is no filename and no value. */ clearButtonDisabled?: boolean; /** Aria-label for the read-only filename field. */ filenameAriaLabel?: string; /** Placeholder string to display in the empty filename field. Defaults to the `fileUploadFilenamePlaceholder` message. */ filenamePlaceholder?: string; /** Flag to hide the built-in preview of the file (where available). If true, you can use the default slot to render an alternate preview. */ hideDefaultPreview?: boolean; /** Flag to show if the field is disabled. */ disabled?: boolean; /** Flag to show if a file is being loaded. */ loading?: boolean; /** Flag to show if the field is read only. */ readonly?: boolean; /** Flag to show if the field is required. */ required?: boolean; /** Aria-valuetext for the loading spinner. */ spinnerAriaValueText?: string; /** Value to indicate if the field is modified to show that validation state. */ validated?: 'success' | 'error' | 'default'; /** Flag to show if a file is being dragged over the file upload field. */ dragActive?: boolean; /** Name property for the preview textarea. */ textareaName?: string; /** Placeholder string to display in the empty text area field. */ textareaPlaceholder?: string; } declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: __VLS_WithSlots any; } & { browseButtonClick: (e: PointerEvent) => any; clearButtonClick: (e: PointerEvent) => any; textAreaBlur: (e: Event) => any; textAreaClick: (e: MouseEvent) => any; }, string, import("vue").PublicProps, Readonly & Readonly<{ "onUpdate:modelValue"?: ((value: string | File | null) => any) | undefined; onBrowseButtonClick?: ((e: PointerEvent) => any) | undefined; onClearButtonClick?: ((e: PointerEvent) => any) | undefined; onTextAreaBlur?: ((e: Event) => any) | undefined; onTextAreaClick?: ((e: MouseEvent) => any) | undefined; }>, { id: string; validated: "success" | "error" | "default"; clearButtonDisabled: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, { /** Additional content rendered after (or instead of) the file preview, like a pf-file-upload-helper-text */ default?: (props?: Record) => any; }>; type __VLS_WithSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=FileUploadField.vue.d.ts.map