import { InputValidationRules } from 'vuetify/types'; import { AcademicUnit } from '../../mixins/API/AcademicUnits/types'; export interface KVPairBase { key: string; value?: any; text?: string; label?: string; readonly?: boolean; selectType?: string; exclude?: string; } export interface TextInput { type?: 'text'; rules?: InputValidationRules; } export interface AutoCompleteItem { text: string | number | object; value: string | number | object; } export interface AutoCompleteInput { type: 'autocomplete'; items?: AutoCompleteItem[]; input?: (event: any) => Promise | void; } export interface AcademicUnitInput { type: 'selector-academic-unit'; input?: (event: AcademicUnit) => Promise | void; } export interface DateTypeInput { type: 'selector-date-type'; input?: (event: string) => Promise | void; } export interface DomainSelectorInput { type: 'selector-domain-type'; input?: (event: string) => Promise | void; } export declare type KVPair = KVPairBase & (TextInput | AutoCompleteInput | AcademicUnitInput | DateTypeInput | DomainSelectorInput);