import type { SetupContext } from '@vue/composition-api';
import type { InputValue } from '../input';
import type { TagInputChangeContext, TagInputValue, TdTagInputProps } from './type';
import type { DragProps } from './interface';
export declare type ChangeParams = [TagInputChangeContext];
export default function useTagList(props: TdTagInputProps, context: SetupContext, getDragProps: DragProps): {
    tagValue: import("@vue/composition-api").Ref<TagInputValue>;
    clearAll: (context: {
        e: MouseEvent;
    }) => void;
    onClose: (p: {
        e?: MouseEvent;
        index: number;
        item: string | number;
    }) => void;
    onInnerEnter: (value: InputValue, params: {
        e: KeyboardEvent;
    }) => void;
    onInputBackspaceKeyUp: (value: InputValue) => void;
    onInputBackspaceKeyDown: (value: InputValue, p: {
        e: KeyboardEvent;
    }) => void;
    renderLabel: ({ displayNode, label }: {
        displayNode: any;
        label: any;
    }, h: Vue.CreateElement) => any[];
};
