yanzhen-design-vue
Version:
367 lines (366 loc) • 15.6 kB
TypeScript
import { ExtractEmitsTypes } from '@yanzhen-libs/utils-vue';
import { ExtractPropTypes } from 'vue';
import { ContactsItem } from './constants';
import { ContactsModelValueType } from './constants/contacts';
import { ComponentExposed } from 'vue-component-type-helpers';
import { default as Contacts } from './contacts.vue';
import { ContactsModelValue } from './hook/use-contacts-model-value';
import { ModalProps } from 'ant-design-vue';
export declare const contactsSelectOptions: {
ns: any;
class: any;
name: any;
};
export type ContactsSelectConfirmFn = (list?: ContactsItem | ContactsItem[], record?: Record<string, ContactsModelValue | undefined>) => void | boolean | Promise<void | boolean>;
export declare const contactsSelectListType: readonly ["avatar", "input"];
export type ContactsSelectListType = (typeof contactsSelectListType)[number];
export declare function defineContactsSelectProps<T extends Record<string, any> = Record<string, any>>(info?: T): {
maxCount: number;
placeholder: undefined | string;
primaryIcon: undefined | string;
autoClear: boolean;
multiple: boolean;
};
export declare const contactsSelectName: any;
export declare const contactsModalIgnoreProp: readonly ["open", "onCancel", "onOk"];
/**
* 通讯录 Select Props
*/
export declare const contactsSelectProps: {
modalProps: import('@yanzhen-libs/utils-vue').EpPropFinalized<import('vue').PropType<Omit<Partial<ExtractPropTypes<{
prefixCls: StringConstructor;
visible: {
type: BooleanConstructor;
default: any;
};
open: {
type: BooleanConstructor;
default: any;
};
confirmLoading: {
type: BooleanConstructor;
default: any;
};
title: import('vue-types').VueTypeValidableDef<any>;
closable: {
type: BooleanConstructor;
default: any;
};
closeIcon: import('vue-types').VueTypeValidableDef<any>;
onOk: import('vue').PropType<(e: MouseEvent) => void>;
onCancel: import('vue').PropType<(e: MouseEvent) => void>;
'onUpdate:visible': import('vue').PropType<(visible: boolean) => void>;
'onUpdate:open': import('vue').PropType<(open: boolean) => void>;
onChange: import('vue').PropType<(open: boolean) => void>;
afterClose: import('vue').PropType<() => void>;
centered: {
type: BooleanConstructor;
default: any;
};
width: (StringConstructor | NumberConstructor)[];
footer: import('vue-types').VueTypeValidableDef<any>;
okText: import('vue-types').VueTypeValidableDef<any>;
okType: import('vue').PropType<import('ant-design-vue/es/button/buttonTypes').LegacyButtonType>;
cancelText: import('vue-types').VueTypeValidableDef<any>;
icon: import('vue-types').VueTypeValidableDef<any>;
maskClosable: {
type: BooleanConstructor;
default: any;
};
forceRender: {
type: BooleanConstructor;
default: any;
};
okButtonProps: {
type: import('vue').PropType<Partial<ExtractPropTypes<{
prefixCls: StringConstructor;
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonType>;
htmlType: {
type: import('vue').PropType<import('ant-design-vue/es/button/buttonTypes').ButtonHTMLType>;
default: string;
};
shape: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonShape>;
};
size: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonSize>;
};
loading: {
type: import('vue').PropType<boolean | {
delay?: number;
}>;
default: () => boolean | {
delay?: number;
};
};
disabled: {
type: BooleanConstructor;
default: any;
};
ghost: {
type: BooleanConstructor;
default: any;
};
block: {
type: BooleanConstructor;
default: any;
};
danger: {
type: BooleanConstructor;
default: any;
};
icon: import('vue-types').VueTypeValidableDef<any>;
href: StringConstructor;
target: StringConstructor;
title: StringConstructor;
onClick: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
onMousedown: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
}>>>;
default: Partial<ExtractPropTypes<{
prefixCls: StringConstructor;
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonType>;
htmlType: {
type: import('vue').PropType<import('ant-design-vue/es/button/buttonTypes').ButtonHTMLType>;
default: string;
};
shape: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonShape>;
};
size: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonSize>;
};
loading: {
type: import('vue').PropType<boolean | {
delay?: number;
}>;
default: () => boolean | {
delay?: number;
};
};
disabled: {
type: BooleanConstructor;
default: any;
};
ghost: {
type: BooleanConstructor;
default: any;
};
block: {
type: BooleanConstructor;
default: any;
};
danger: {
type: BooleanConstructor;
default: any;
};
icon: import('vue-types').VueTypeValidableDef<any>;
href: StringConstructor;
target: StringConstructor;
title: StringConstructor;
onClick: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
onMousedown: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
}>>;
};
cancelButtonProps: {
type: import('vue').PropType<Partial<ExtractPropTypes<{
prefixCls: StringConstructor;
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonType>;
htmlType: {
type: import('vue').PropType<import('ant-design-vue/es/button/buttonTypes').ButtonHTMLType>;
default: string;
};
shape: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonShape>;
};
size: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonSize>;
};
loading: {
type: import('vue').PropType<boolean | {
delay?: number;
}>;
default: () => boolean | {
delay?: number;
};
};
disabled: {
type: BooleanConstructor;
default: any;
};
ghost: {
type: BooleanConstructor;
default: any;
};
block: {
type: BooleanConstructor;
default: any;
};
danger: {
type: BooleanConstructor;
default: any;
};
icon: import('vue-types').VueTypeValidableDef<any>;
href: StringConstructor;
target: StringConstructor;
title: StringConstructor;
onClick: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
onMousedown: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
}>>>;
default: Partial<ExtractPropTypes<{
prefixCls: StringConstructor;
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonType>;
htmlType: {
type: import('vue').PropType<import('ant-design-vue/es/button/buttonTypes').ButtonHTMLType>;
default: string;
};
shape: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonShape>;
};
size: {
type: import('vue').PropType<import('ant-design-vue/es/button').ButtonSize>;
};
loading: {
type: import('vue').PropType<boolean | {
delay?: number;
}>;
default: () => boolean | {
delay?: number;
};
};
disabled: {
type: BooleanConstructor;
default: any;
};
ghost: {
type: BooleanConstructor;
default: any;
};
block: {
type: BooleanConstructor;
default: any;
};
danger: {
type: BooleanConstructor;
default: any;
};
icon: import('vue-types').VueTypeValidableDef<any>;
href: StringConstructor;
target: StringConstructor;
title: StringConstructor;
onClick: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
onMousedown: {
type: import('vue').PropType<import('ant-design-vue/es/_util/EventInterface').MouseEventHandler | import('ant-design-vue/es/_util/EventInterface').MouseEventHandler[]>;
};
}>>;
};
destroyOnClose: {
type: BooleanConstructor;
default: any;
};
wrapClassName: StringConstructor;
maskTransitionName: StringConstructor;
transitionName: StringConstructor;
getContainer: {
type: import('vue').PropType<string | false | HTMLElement | (() => HTMLElement)>;
default: any;
};
zIndex: NumberConstructor;
bodyStyle: {
type: import('vue').PropType<import('vue').CSSProperties>;
default: import('vue').CSSProperties;
};
maskStyle: {
type: import('vue').PropType<import('vue').CSSProperties>;
default: import('vue').CSSProperties;
};
mask: {
type: BooleanConstructor;
default: any;
};
keyboard: {
type: BooleanConstructor;
default: any;
};
wrapProps: ObjectConstructor;
focusTriggerAfterClose: {
type: BooleanConstructor;
default: any;
};
modalRender: import('vue').PropType<(arg: {
originVNode: import('ant-design-vue/es/_util/type').VueNode;
}) => import('ant-design-vue/es/_util/type').VueNode>;
mousePosition: {
type: import('vue').PropType<{
x: number;
y: number;
}>;
default: {
x: number;
y: number;
};
};
}>>, "open" | "onCancel" | "onOk">>, unknown, unknown, () => {}, boolean>;
modalTitle: import('@yanzhen-libs/utils-vue').EpPropFinalized<StringConstructor, unknown, unknown, "通讯录", boolean>;
modalOpen: {
type: BooleanConstructor;
};
immediate: import('@yanzhen-libs/utils-vue').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
listType: import('@yanzhen-libs/utils-vue').EpPropFinalized<import('vue').PropType<boolean | "input" | "avatar">, unknown, unknown, () => "avatar", boolean>;
autoClear: {
readonly type: import('vue').PropType<import('@yanzhen-libs/utils-vue').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
selectProps: {
type: import('vue').PropType<Partial<{
maxCount: number;
placeholder: undefined | string;
primaryIcon: undefined | string;
autoClear: boolean;
multiple: boolean;
}>>;
};
beforeConfirm: {
type: import('vue').PropType<ContactsSelectConfirmFn>;
};
onChange: any;
onBlur: {
type: import('vue').PropType<() => void | boolean | Promise<void | boolean>>;
};
onConfirm: {
type: import('vue').PropType<ContactsSelectConfirmFn>;
};
onCancel: {
type: import('vue').PropType<() => void | boolean | Promise<void | boolean>>;
};
};
export type ContactsChangeValue = {
[K in ContactsModelValueType]: ContactsModelValue;
};
export declare const contactsSelectEmits: {
change: (...args: unknown[]) => boolean;
blur: () => boolean;
confirm: (list?: ContactsItem | ContactsItem[], record?: Record<string, ContactsModelValue>) => boolean;
cancel: () => boolean;
};
export type ContactsSelectProps = ExtractPropTypes<typeof contactsSelectProps>;
export type ContactsSelectPropsKey = keyof ContactsSelectProps;
export type ContactsSelectEmits = ExtractEmitsTypes<typeof contactsSelectEmits>;
export type ContactsSelectEmitsKey = keyof ContactsSelectEmits;
export type ContactsComponentInstance = ComponentExposed<typeof Contacts>;
export declare const contactsSelectOmitModalProps: (props: ModalProps) => Omit<ModalProps, (typeof contactsModalIgnoreProp)[number]>;