import e from"./vue-types/index.mjs";import{createVNode as t,defineComponent as n,shallowRef as r}from"vue";var i=n({compatConfig:{MODE:3},props:{disabled:e.looseBool,type:e.string,value:e.any,tag:{type:String,default:`input`},size:e.string,onChange:Function,onInput:Function,onBlur:Function,onFocus:Function,onKeydown:Function,onCompositionstart:Function,onCompositionend:Function,onKeyup:Function,onPaste:Function,onMousedown:Function},emits:[`change`,`input`,`blur`,`keydown`,`focus`,`compositionstart`,`compositionend`,`keyup`,`paste`,`mousedown`],setup(e,{expose:n}){let i=r(null);return n({focus:()=>{i.value&&i.value.focus()},blur:()=>{i.value&&i.value.blur()},input:i,setSelectionRange:(e,t,n)=>{i.value?.setSelectionRange(e,t,n)},select:()=>{i.value?.select()},getSelectionStart:()=>i.value?.selectionStart,getSelectionEnd:()=>i.value?.selectionEnd,getScrollTop:()=>i.value?.scrollTop}),()=>{let{tag:n,value:r,...a}=e;return t(n,{...a,ref:i,value:r},null)}}});export{i as default};