import type { IBasicAddressProps, BasicAddressValueType } from './address' import type { IAliPayInputProps, AliPayInputValueType } from './aliPayInput' import type { IBuyerNickInputProps, BuyerNickInputValueType } from './buyerNickInput' import type { IBasicCascaderProps, BasicCascaderValueType } from './cascader' import type { IBasicCheckboxProps, BasicCheckboxValueType } from './checkbox' import type { IBasicDateTimeProps, BasicDateTimeValueType } from './dateTime' import type { IEnterPrisePaymentProps, EnterPrisePaymentValueType } from './enterPrisePayment' import type { IExpressLogisticsSelectProps, ExpressLogisticsSelectVaueType } from './expressLogisticsSelect' import type { IBasicFileProps, BasicFileValueType } from './file' import type { IBasicGradeProps } from './grade' import type { IBasicIdentifyAddressProps, BasicIdentifyAddressFieldValueType } from './identifyAddress' import type { IBasicInputProps } from './input' import type { IBasicMultSelectProps, BasicMultSelectValueType } from './multSelect' import type { IOrdinaryInvoiceProps, OrdinaryInvoiceValueType } from './ordinaryInvoice' import type { IBasicPictureProps, BasicPictureValueType } from './picture' import type { IBasicRadioProps, BasicRadioValueType } from './radio' import type { IBasicRateProps, BasicRateValueType } from './rate' import type { IReceiverAddressInputProps, ReceiverAddressInputValueType } from './receiverAddressInput' import type { IBasicSelectProps, BasicSelectValueType } from './select' import type { IStatusSelectProps, StatusSelectValueType } from './statusSelect' import type { IBasicTextAreaProps } from './textArea' import type { ITradeIdInputProps } from './tradeIdInput' import type { IActualPaymentProps } from './actualPayment' import type { IActualReceiptPaymentProps } from './actualReceiptPayment' import type { IItemSelectProps, ItemSelectValueType } from './itemSelect' import type { IItemIdProps } from './itemId' import type { IItemEnCodeProps } from './itemEnCode' import type { SerializedError } from '@reduxjs/toolkit' import type { FetchBaseQueryError } from '@reduxjs/toolkit/query' import type { ShopItemType } from '../shop' import { IAfterSalesOrderIdProps } from './afterSalesOrderId' export type FieldDataType = | IBasicInputProps | IBasicTextAreaProps | IBasicRadioProps | IBasicCheckboxProps | IBasicSelectProps | IBasicMultSelectProps | IExpressLogisticsSelectProps | IBuyerNickInputProps | IAliPayInputProps | ITradeIdInputProps | IBasicCascaderProps | IBasicRateProps | IBasicGradeProps | IBasicPictureProps | IBasicDateTimeProps | IBasicFileProps | IBasicAddressProps | IReceiverAddressInputProps | IBasicIdentifyAddressProps | IEnterPrisePaymentProps | IOrdinaryInvoiceProps | IStatusSelectProps | IActualPaymentProps | IItemSelectProps | IItemIdProps | IItemEnCodeProps | IAfterSalesOrderIdProps | IActualReceiptPaymentProps export type FieldValueType = | string | number | BasicIdentifyAddressFieldValueType | BasicMultSelectValueType | BasicCascaderValueType | BasicSelectValueType | ExpressLogisticsSelectVaueType | BuyerNickInputValueType | AliPayInputValueType | BasicRadioValueType | BasicCheckboxValueType | BasicRateValueType | BasicDateTimeValueType | BasicPictureValueType | BasicFileValueType | BasicAddressValueType | ReceiverAddressInputValueType | EnterPrisePaymentValueType | OrdinaryInvoiceValueType | StatusSelectValueType | ItemSelectValueType[] export type FieldValueChangeType = (value: T) => void export type RenderPropsType = { hidden?: boolean } export type RepeatCheckType = { componentKey: string repeatCount: number } export type OnRepeatCheckEventParamsType = { type: 'REPEAT_CHECK' fieldData: FieldDataType value: string componentName: string } export type OnOrderBackEventParamsType = { type: 'ORDER_BACK_REPLACE' fieldData: FieldDataType value: string } export type TriggerEventParamsType = | OnRepeatCheckEventParamsType | OnOrderBackEventParamsType export type TriggerEventPartFCType = ( type: TriggerEventParamsType['type'], params: { value: string } ) => void export type ValidRepeatEventParamsType = { needCheckComponentList: { componentKey: string; componentValue: string }[] } export type ErrorType = string | Error | SerializedError | FetchBaseQueryError export type ValidRepeatEventFcType = ( params: ValidRepeatEventParamsType ) => Promise<{ isRepeat: boolean error: ErrorType }> export type FiledRenderPropsType = { value?: T onChange?: F key?: string isSubField?: boolean // 复合组件是否展示内部单组件label uniqueKey: string companyKey: string shopId: string shopList?: ShopItemType[] buyerOpenUid: string buyerNick: string shopUniqueKey: string triggerEvent?: (data: TriggerEventParamsType) => void }