import { ComponentPublicInstance, CSSProperties } from 'vue'; import { FocusableRef, FormChildRef } from '../../declaration'; import { VsInputWrapperStyleSet } from '../vs-input-wrapper/types'; import { default as VsInput } from './VsInput.vue'; declare module 'vue' { interface GlobalComponents { VsInput: typeof VsInput; } } export type { VsInput }; export interface VsInputRef extends ComponentPublicInstance, FocusableRef, FormChildRef { select: () => void; } export type VsInputValueType = string | number | null; export type VsInputType = 'email' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'url'; export interface VsInputStyleSet extends CSSProperties { $prepend?: CSSProperties; $append?: CSSProperties; $input?: CSSProperties; $wrapper?: VsInputWrapperStyleSet; }