import { type StyleValue } from 'vue';
import { type DefaultProps } from '../config';
export interface KeyboardProps {
    rootStyle?: StyleValue;
    rootClass?: string;
    type?: 'number' | 'digit' | 'idcard' | 'random' | 'plate';
    mode?: KeyboardPlateMode;
    disabledKey?: (key: string) => boolean;
}
export declare const defaultKeyboardProps: () => DefaultProps<KeyboardProps>;
export interface KeyboardSlots {
    default?(props: Record<string, never>): any;
}
export type KeyboardPlateMode = 'chinese' | 'english';
export interface KeyboardEmits {
    (e: 'input', key: string): void;
    (e: 'delete'): void;
    (e: 'toggle', mode: KeyboardPlateMode): void;
    (e: 'update:mode', mode: KeyboardPlateMode): void;
}
export interface KeyBoardExpose {
    shuffle: () => void;
    toggle: (mode?: KeyboardPlateMode) => void;
}
export declare const plateProvinceKeys: string[];
export declare const plateSuffixKeys: string[];
export declare const plateEnglishLetterKeys: string[];
export declare const numberKeys: string[];
export declare const digitKeys: string[];
export declare const idcardKeys: string[];
export declare const chineseKeys: string[];
export declare const englishKeys: string[];
export declare function getRandomKeys(): string[];
