ant-design-vue
Version:
An enterprise-class UI design language and Vue-based implementation
762 lines (761 loc) • 28.9 kB
TypeScript
/**
* To match accessibility requirement, we always provide an input in the component.
* Other element will not set `tabindex` to avoid `onBlur` sequence problem.
* For focused select, we set `aria-live="polite"` to update the accessibility content.
*
* ref:
* - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions
*/
import { RenderNode, Mode, RenderDOMFunc } from './interface';
import { GetLabeledValue, FilterOptions, FilterFunc, DefaultValueType, RawValueType, LabelValueType, Key, FlattenOptionsType, SingleType, OnClear, SelectSource, CustomTagProps, DropdownRender } from './interface/generator';
import { OptionListProps } from './OptionList';
import { CSSProperties, DefineComponent, VNodeChild } from 'vue';
export declare const BaseProps: () => {
prefixCls: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
id: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
class: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
style: import("vue-types").VueTypeValidableDef<any>;
options: import("vue-types").VueTypeValidableDef<unknown[]> & {
default: () => unknown[];
};
mode: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
value: import("vue-types").VueTypeValidableDef<any>;
defaultValue: import("vue-types").VueTypeValidableDef<any>;
labelInValue: import("vue-types").VueTypeValidableDef<boolean>;
inputValue: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
searchValue: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
optionFilterProp: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
/**
* In Select, `false` means do nothing.
* In TreeSelect, `false` will highlight match item.
* It's by design.
*/
filterOption: import("vue-types").VueTypeValidableDef<any>;
showSearch: import("vue-types").VueTypeValidableDef<boolean>;
autoClearSearchValue: import("vue-types").VueTypeValidableDef<boolean>;
onSearch: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onClear: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
allowClear: import("vue-types").VueTypeValidableDef<boolean>;
clearIcon: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
showArrow: import("vue-types").VueTypeValidableDef<boolean>;
inputIcon: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
removeIcon: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
menuItemSelectedIcon: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
open: import("vue-types").VueTypeValidableDef<boolean>;
defaultOpen: import("vue-types").VueTypeValidableDef<boolean>;
listHeight: import("vue-types").VueTypeValidableDef<number> & {
default: number;
};
listItemHeight: import("vue-types").VueTypeValidableDef<number> & {
default: number;
};
dropdownStyle: import("vue-types").VueTypeValidableDef<{
[key: string]: any;
}> & {
default: () => {
[key: string]: any;
};
};
dropdownClassName: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
dropdownMatchSelectWidth: import("vue-types").VueTypeDef<number | boolean>;
virtual: import("vue-types").VueTypeValidableDef<boolean>;
dropdownRender: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
dropdownAlign: import("vue-types").VueTypeValidableDef<any>;
animation: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
transitionName: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
getPopupContainer: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
direction: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
disabled: import("vue-types").VueTypeValidableDef<boolean>;
loading: import("vue-types").VueTypeValidableDef<boolean>;
autofocus: import("vue-types").VueTypeValidableDef<boolean>;
defaultActiveFirstOption: import("vue-types").VueTypeValidableDef<boolean>;
notFoundContent: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
placeholder: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
backfill: import("vue-types").VueTypeValidableDef<boolean>;
getInputElement: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
optionLabelProp: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
maxTagTextLength: import("vue-types").VueTypeValidableDef<number> & {
default: number;
};
maxTagCount: import("vue-types").VueTypeValidableDef<number> & {
default: number;
};
maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
tokenSeparators: import("vue-types").VueTypeValidableDef<unknown[]> & {
default: () => unknown[];
};
tagRender: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
showAction: import("vue-types").VueTypeValidableDef<unknown[]> & {
default: () => unknown[];
};
tabindex: import("vue-types").VueTypeValidableDef<number> & {
default: number;
};
onKeyup: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onKeydown: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onPopupScroll: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onDropdownVisibleChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onSelect: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onDeselect: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onInputKeyDown: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onClick: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onBlur: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onFocus: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onMousedown: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onMouseenter: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
onMouseleave: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
default: (...args: any[]) => any;
};
choiceTransitionName: import("vue-types").VueTypeValidableDef<string> & {
default: string;
};
/**
* Only used in current version for internal event process.
* Do not use in production environment.
*/
internalProps: import("vue-types").VueTypeValidableDef<{
[key: string]: any;
}> & {
default: () => {
[key: string]: any;
};
};
children: import("vue-types").VueTypeValidableDef<unknown[]> & {
default: () => unknown[];
};
};
export interface SelectProps<OptionsType extends object[], ValueType> {
prefixCls?: string;
id?: string;
class?: string;
style?: CSSProperties;
options?: OptionsType;
children?: any[];
mode?: Mode;
value?: ValueType;
defaultValue?: ValueType;
labelInValue?: boolean;
inputValue?: string;
searchValue?: string;
optionFilterProp?: string;
/**
* In Select, `false` means do nothing.
* In TreeSelect, `false` will highlight match item.
* It's by design.
*/
filterOption?: boolean | FilterFunc<OptionsType[number]>;
showSearch?: boolean;
autoClearSearchValue?: boolean;
onSearch?: (value: string) => void;
onClear?: OnClear;
allowClear?: boolean;
clearIcon?: VNodeChild;
showArrow?: boolean;
inputIcon?: RenderNode;
removeIcon?: VNodeChild;
menuItemSelectedIcon?: RenderNode;
open?: boolean;
defaultOpen?: boolean;
listHeight?: number;
listItemHeight?: number;
dropdownStyle?: CSSProperties;
dropdownClassName?: string;
dropdownMatchSelectWidth?: boolean | number;
virtual?: boolean;
dropdownRender?: DropdownRender;
dropdownAlign?: any;
animation?: string;
transitionName?: string;
getPopupContainer?: RenderDOMFunc;
direction?: string;
disabled?: boolean;
loading?: boolean;
autofocus?: boolean;
defaultActiveFirstOption?: boolean;
notFoundContent?: VNodeChild;
placeholder?: VNodeChild;
backfill?: boolean;
getInputElement?: () => VNodeChild | JSX.Element;
optionLabelProp?: string;
maxTagTextLength?: number;
maxTagCount?: number;
maxTagPlaceholder?: VNodeChild | ((omittedValues: LabelValueType[]) => VNodeChild);
tokenSeparators?: string[];
tagRender?: (props: CustomTagProps) => VNodeChild;
showAction?: ('focus' | 'click')[];
tabindex?: number;
onKeyup?: EventHandlerNonNull;
onKeydown?: EventHandlerNonNull;
onPopupScroll?: EventHandlerNonNull;
onDropdownVisibleChange?: (open: boolean) => void;
onSelect?: (value: SingleType<ValueType>, option: OptionsType[number]) => void;
onDeselect?: (value: SingleType<ValueType>, option: OptionsType[number]) => void;
onInputKeyDown?: EventHandlerNonNull;
onClick?: EventHandlerNonNull;
onChange?: (value: ValueType, option: OptionsType[number] | OptionsType) => void;
onBlur?: EventHandlerNonNull;
onFocus?: EventHandlerNonNull;
onMousedown?: EventHandlerNonNull;
onMouseenter?: EventHandlerNonNull;
onMouseleave?: EventHandlerNonNull;
choiceTransitionName?: string;
/**
* Only used in current version for internal event process.
* Do not use in production environment.
*/
internalProps?: {
mark?: string;
onClear?: OnClear;
skipTriggerChange?: boolean;
skipTriggerSelect?: boolean;
onRawSelect?: (value: RawValueType, option: OptionsType[number], source: SelectSource) => void;
onRawDeselect?: (value: RawValueType, option: OptionsType[number], source: SelectSource) => void;
};
}
export interface GenerateConfig<OptionsType extends object[]> {
prefixCls: string;
components: {
optionList: DefineComponent<Omit<OptionListProps, 'options'> & {
options?: OptionsType;
}>;
};
/** Convert jsx tree into `OptionsType` */
convertChildrenToData: (children: VNodeChild | JSX.Element) => OptionsType;
/** Flatten nest options into raw option list */
flattenOptions: (options: OptionsType, props: any) => FlattenOptionsType<OptionsType>;
/** Convert single raw value into { label, value } format. Will be called by each value */
getLabeledValue: GetLabeledValue<FlattenOptionsType<OptionsType>>;
filterOptions: FilterOptions<OptionsType>;
findValueOption: ((values: RawValueType[], options: FlattenOptionsType<OptionsType>) => OptionsType) | ((values: RawValueType[], options: FlattenOptionsType<OptionsType>, info?: {
prevValueOptions?: OptionsType[];
}) => OptionsType);
/** Check if a value is disabled */
isValueDisabled: (value: RawValueType, options: FlattenOptionsType<OptionsType>) => boolean;
warningProps?: (props: any) => void;
fillOptionsWithMissingValue?: (options: OptionsType, value: DefaultValueType, optionLabelProp: string, labelInValue: boolean) => OptionsType;
omitDOMProps?: (props: object) => object;
}
/**
* This function is in internal usage.
* Do not use it in your prod env since we may refactor this.
*/
export default function generateSelector<OptionsType extends {
value?: RawValueType;
label?: VNodeChild;
key?: Key;
disabled?: boolean;
}[]>(config: GenerateConfig<OptionsType>): DefineComponent<SelectProps<OptionsType, DefaultValueType>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{ [K in "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)]: SelectProps<OptionsType, DefaultValueType>[K] extends null ? any : SelectProps<OptionsType, DefaultValueType>[K] extends {
type: true;
} ? any : SelectProps<OptionsType, DefaultValueType>[K] extends ObjectConstructor | {
type: ObjectConstructor;
} ? Record<string, any> : SelectProps<OptionsType, DefaultValueType>[K] extends BooleanConstructor | {
type: BooleanConstructor;
} ? boolean : SelectProps<OptionsType, DefaultValueType>[K] extends import("vue").Prop<infer V, infer D> ? unknown extends V ? D : V : SelectProps<OptionsType, DefaultValueType>[K]; } & { [K_1 in Exclude<"style", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"class", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"children", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onFocus", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onBlur", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onChange", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onKeydown", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onKeyup", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onClick", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onMousedown", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onMouseenter", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onMouseleave", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onSelect", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"prefixCls", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"direction", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"open", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"disabled", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"mode", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"virtual", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"id", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"options", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"defaultActiveFirstOption", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"notFoundContent", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"menuItemSelectedIcon", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"searchValue", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"value", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"labelInValue", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"optionLabelProp", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"optionFilterProp", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"filterOption", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"autofocus", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"tabindex", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"removeIcon", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"maxTagCount", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"maxTagTextLength", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"maxTagPlaceholder", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"tokenSeparators", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"tagRender", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"choiceTransitionName", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"placeholder", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"showSearch", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onInputKeyDown", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"backfill", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onSearch", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"animation", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"transitionName", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"dropdownStyle", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"dropdownClassName", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"dropdownMatchSelectWidth", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"dropdownRender", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"getPopupContainer", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"dropdownAlign", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"showAction", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"defaultValue", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"inputValue", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"autoClearSearchValue", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onClear", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"allowClear", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"clearIcon", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"showArrow", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"inputIcon", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"defaultOpen", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"listHeight", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"listItemHeight", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"loading", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"getInputElement", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onPopupScroll", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onDropdownVisibleChange", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"onDeselect", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)> | Exclude<"internalProps", "dropdownAlign" | (OptionsType extends BooleanConstructor | {
required: true;
} | {
default: any;
} | {
type: BooleanConstructor;
} ? "options" : never)>]?: SelectProps<OptionsType, DefaultValueType>[K_1] extends null ? any : SelectProps<OptionsType, DefaultValueType>[K_1] extends {
type: true;
} ? any : SelectProps<OptionsType, DefaultValueType>[K_1] extends ObjectConstructor | {
type: ObjectConstructor;
} ? Record<string, any> : SelectProps<OptionsType, DefaultValueType>[K_1] extends BooleanConstructor | {
type: BooleanConstructor;
} ? boolean : SelectProps<OptionsType, DefaultValueType>[K_1] extends import("vue").Prop<infer V, infer D> ? unknown extends V ? D : V : SelectProps<OptionsType, DefaultValueType>[K_1]; }>, { [K_2 in "dropdownAlign" | (OptionsType extends BooleanConstructor | {
default: any;
} | {
type: BooleanConstructor;
} ? OptionsType extends {
type: BooleanConstructor;
required: true;
} ? never : "options" : never)]: SelectProps<OptionsType, DefaultValueType>[K_2] extends null ? any : SelectProps<OptionsType, DefaultValueType>[K_2] extends {
type: true;
} ? any : SelectProps<OptionsType, DefaultValueType>[K_2] extends ObjectConstructor | {
type: ObjectConstructor;
} ? Record<string, any> : SelectProps<OptionsType, DefaultValueType>[K_2] extends BooleanConstructor | {
type: BooleanConstructor;
} ? boolean : SelectProps<OptionsType, DefaultValueType>[K_2] extends import("vue").Prop<infer V, infer D> ? unknown extends V ? D : V : SelectProps<OptionsType, DefaultValueType>[K_2]; }>;