declare namespace ADQV3 {
    interface AdProps {
        userId: number
        creativeHandle?: (id: number) => void
    };
    interface CreativeProps {
        queryForm: GetDynamicCreativeProps,
        setQueryForm: React.Dispatch<React.SetStateAction<GetDynamicCreativeProps>>,
        userId: number
    };
    interface GetAdListProps {
        pageNum: number;
        pageSize: number;
        adUnitType: string
        accountMemo?: string,  // 腾讯备注
        accountRemark?: string, // 本地备注
        accountIdList?: any[], // 广告账号
        adgroupIdList?: any[], // 广告组
        adgroupName?: string,  // 广告名称
        putUserIdList?: number[], // 投手
        systemStatusList?: string[], // 广告状态
        beginDate?: string,
        endDate?: string,
        smartTargetingStatus?: 'SMART_TARGETING_AUTO' | 'SMART_TARGETING_NONE' | 'SMART_TARGETING_NULL'
    };
    type GetAdgroupDetailProps = {
        accountId: number,
        adgroupId: number
    };
    type AccountAdgroupMapsProps = {
        accountAdgroupMaps: string[]
    };
    interface ModifyStatusBatchProps extends AccountAdgroupMapsProps {
        suspend: boolean
    };
    interface ModifyAmountBatchProps extends AccountAdgroupMapsProps {
        bidAmount?: number
        bidAmountPercent?: number
    };
    interface GetDynamicCreativeProps {
        pageNum: number;
        pageSize: number;
        userId: number;
        isDeleted?: boolean;
        creativeName?: string;
        creativeId?: number;
        adgroupId?: number;
        accountId?: number
    }
    interface BatchUpdateDownloadProps {
        accountId: number,
        dynamicCreativeId: number,
        pageId: number[]
    }
    interface ModifyAdTimeBatchProps extends AccountAdgroupMapsProps {
        beginDate: string,
        endDate: string,
        timeSeries: string
    }
    interface UpdateBatchAdgroupInfoProps extends AccountAdgroupMapsProps {
        adgroupName?: string
        autoAcquisitionEnabled?: boolean
        autoAcquisitionBudget?: number
        autoAcquisitionBudgetPercent?: number
    }
    interface ModifyDailyBudgetBatchProps extends AccountAdgroupMapsProps {
        bidAmount: number
    }
    interface DynamicCreativeLogProps {
        pageNum: number,
        pageSize: number,
        accountId?: number,
        adgroupId?: number,
        creativeId?: number,
        creativeName?: string,
        userId?: number
    }
    interface RetrialBatchProps {
        creativeReviewDTOs: {
            accountId: number,
            dynamicCreativeId: number
        },
        skipExisting: boolean
    }
    interface AddTaskAutoAcquisitionProps {
        taskName: string,
        timeList?: string[]
        startDay?: string,
        endDay?: string,
        adgroupBeanList?: {
            accountId: number,
            adgroupId: number
        }[],
        budget?: number
        budgetPercent?: number
        defaultBudget?: number,
        addType?: 'fixed' | 'percent',
        taskType?: 'imm' | 'cyc'
    }
    interface GetAdgroupQuantTaskListProps {
        pageNum: number,
        pageSize: number,
        startDay?: string,
        endDay?: string,
        taskName?: string,
        adgroupIdList?: number[]
    }
    interface GetAdgroupQuantTaskAdLogListProps {
        pageNum: number,
        pageSize: number,
        taskId: number,
        accountId?: string
        adgroupId?: string
        startDay?: string,
        endDay?: string,
        status?: 0 | 1
    }
    interface GetAdgroupQuantTaskAdDetailsListProps {
        pageNum: number,
        pageSize: number,
        taskId: number,
        accountId?: string
        adgroupId?: string
    }
    interface DelAdgroupQuantTaskAdProps {
        taskId: number,
        adgroupBeanList: {
            accountId: number,
            adgroupId: number
        }[]
    }
    interface AdAddTaskProps {
        adgroupBeanList: {
            accountId: number,
            adgroupId: number
        }[]
        taskId: number
    }
}