import { SensitiveInputEmits, SensitiveInputLabels, SensitiveInputMode, SensitiveInputProps, SensitiveInputSize, SensitiveInputStatus } from './src/types'; import { default as TxSensitiveInput } from './src/TxSensitiveInput.vue'; /** * TxSensitiveInput — a field for API keys, tokens and other secrets. The value * is masked until the user asks for it, and a copy tab lets them take it * without ever revealing it on screen. * * @example * ```ts * import { TxSensitiveInput } from '@talex-touch/tuffex' * * // * ``` * * Copying uses `navigator.clipboard` with a hidden-textarea fallback, so it * works on insecure origins; a denied clipboard emits `copy-error` rather than * failing silently. * * @public */ declare const SensitiveInput: { new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins & Readonly<{ onMask?: (() => any) | undefined; onCopy?: ((value: string) => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; onReveal?: (() => any) | undefined; onCopyError?: ((error: unknown) => any) | undefined; }>, { focus: () => void; blur: () => void | undefined; reveal: () => void; mask: () => void; copy: () => Promise; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & { mask: () => any; copy: (value: string) => any; "update:modelValue": (value: string) => any; reveal: () => any; copyError: (error: unknown) => any; }, import('vue').PublicProps, { label: string; mask: string; error: string; required: boolean; description: string; disabled: boolean; placeholder: string; size: SensitiveInputSize; modelValue: string; readonly: boolean; copyable: boolean; copiedDuration: number; }, false, {}, {}, Record, Record, string, { containerRef: HTMLDivElement; inputRef: HTMLInputElement; }, any, import('vue').ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly & Readonly<{ onMask?: (() => any) | undefined; onCopy?: ((value: string) => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; onReveal?: (() => any) | undefined; onCopyError?: ((error: unknown) => any) | undefined; }>, { focus: () => void; blur: () => void | undefined; reveal: () => void; mask: () => void; copy: () => Promise; }, {}, {}, {}, { label: string; mask: string; error: string; required: boolean; description: string; disabled: boolean; placeholder: string; size: SensitiveInputSize; modelValue: string; readonly: boolean; copyable: boolean; copiedDuration: number; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import('vue').ComponentOptionsBase & Readonly<{ onMask?: (() => any) | undefined; onCopy?: ((value: string) => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; onReveal?: (() => any) | undefined; onCopyError?: ((error: unknown) => any) | undefined; }>, { focus: () => void; blur: () => void | undefined; reveal: () => void; mask: () => void; copy: () => Promise; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & { mask: () => any; copy: (value: string) => any; "update:modelValue": (value: string) => any; reveal: () => any; copyError: (error: unknown) => any; }, string, { label: string; mask: string; error: string; required: boolean; description: string; disabled: boolean; placeholder: string; size: SensitiveInputSize; modelValue: string; readonly: boolean; copyable: boolean; copiedDuration: number; }, {}, string, {}, Record, Record, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & import('vue').Plugin; export { SENSITIVE_INPUT_DEFAULT_LABELS } from './src/types'; export { SensitiveInput, TxSensitiveInput }; export type { SensitiveInputEmits, SensitiveInputLabels, SensitiveInputMode, SensitiveInputProps, SensitiveInputSize, SensitiveInputStatus, }; export type TxSensitiveInputInstance = InstanceType; export default SensitiveInput;