import { Ref, PropType } from 'vue'; import { ArrayField } from '@formily/core'; import type { ButtonProps as VantButtonProps } from 'vant'; import type { Schema } from '@formily/json-schema'; export interface IArrayBaseAdditionProps extends VantButtonProps { title?: string; method?: 'push' | 'unshift'; defaultValue?: any; } export interface IArrayBaseProps { keyMap?: WeakMap | string[] | null; } export interface IArrayBaseItemProps { index: number; record: any; } export interface IArrayBaseContext { field: Ref; schema: Ref; props: IArrayBaseProps; keyMap?: WeakMap | string[] | null; } declare const useArray: () => IArrayBaseContext; declare const useIndex: (index?: number) => Ref; declare const useRecord: (record?: number) => Ref; declare const ArrayBaseIndex: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>, {}>; declare const ArrayBaseAddition: import("vue").DefineComponent, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, { title: any; defaultValue: any; method: any; }>; declare const ArrayBaseRemove: import("vue").DefineComponent, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, { title: any; index: any; }>; export declare type ArrayBaseMixins = { Addition?: typeof ArrayBaseAddition; Remove?: typeof ArrayBaseRemove; Index?: typeof ArrayBaseIndex; useArray?: typeof useArray; useIndex?: typeof useIndex; useRecord?: typeof useRecord; }; export declare const ArrayBase: { new (...args: any[]): { $: import("vue").ComponentInternalInstance; $data: {}; $props: Partial<{}> & Omit>; }; }>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>; $emit: (event: "change" | "focus" | "blur", ...args: any[]) => void; $el: any; $options: import("vue").ComponentOptionsBase>; }; }>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], string, {}> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]; renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof import("vue").nextTick; $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions): import("vue").WatchStopHandle; } & Readonly>; }; }>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; } & import("vue").ShallowUnwrapRef<() => any> & {} & {} & import("vue").ComponentCustomProperties; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase>; }; }>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & { Index: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>, {}>; Item: import("vue").DefineComponent, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, { index: any; record: any; }>; Addition: import("vue").DefineComponent, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, { title: any; defaultValue: any; method: any; }>; Remove: import("vue").DefineComponent, () => any, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "focus" | "blur")[], "change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>> & { onBlur?: (...args: any[]) => any; onChange?: (...args: any[]) => any; onFocus?: (...args: any[]) => any; }, { title: any; index: any; }>; useArray: () => IArrayBaseContext; useIndex: (index?: number) => Ref; useKey: (schema: Schema) => { keyMap: string[] | WeakMap; getKey: (record: any, index?: number) => string; }; useRecord: (record?: number) => Ref; }; export default ArrayBase;