import { WritableComputedRef, Ref } from 'vue';
/**
 * Type for Vue's emit function, used below in the useModelWrapper function.
 */
type EmitFunc<EventName extends string, ParamType> = (event: EventName, param: ParamType) => void;
export default function useModelWrapper<ModelValue, EventName extends 'update:modelValue'>(modelValueRef: Ref<ModelValue>, emit: EmitFunc<EventName, ModelValue>, eventName?: EventName): WritableComputedRef<ModelValue>;
export default function useModelWrapper<ModelValue, EventName extends string>(modelValueRef: Ref<ModelValue>, emit: EmitFunc<EventName, ModelValue>, eventName: EventName): WritableComputedRef<ModelValue>;
export {};
