import { AbstractEntity, BaseFileEntity, BaseObjectEntity, CommonDeleteParams, CommonFetchParams, CommonPublishParams, PaginationInfo, Relation, ResponseBody, Schemas } from '@/types/index';
export interface TimeZoneType extends BaseObjectEntity {
    desc: string;
    country: string;
}
export interface LocaleTimeZoneConfigType {
    [locale: string]: TimeZoneType[];
}
export interface ConditionFetchParams extends Omit<CommonFetchParams, 'organizationId'> {
    folderId?: string;
    type?: string;
}
export interface ConditionContentSchemaChildrenProps extends BaseObjectEntity {
    operation: string;
}
export interface ConditionContentSchemaChildren {
    type: string;
    props: ConditionContentSchemaChildrenProps;
}
export interface ConditionContentSchema extends Schemas<any> {
    children: ConditionContentSchemaChildren[];
}
export interface ConditionContentEntity extends Pick<AbstractEntity, 'id'> {
    relation?: Relation;
    schemas: ConditionContentSchema[];
}
export interface ConditionEntity extends Omit<BaseFileEntity<ConditionContentEntity>, 'type'> {
    type?: 'condition';
}
export interface ConditionFetchRes extends ResponseBody {
    data: ConditionEntity[];
    pageInfo: PaginationInfo;
}
export interface ConditionSaveParams extends Pick<ConditionEntity, 'applicationId' | 'intro' | 'name' | 'folderId' | 'suffix'> {
    content?: ConditionContentEntity;
    id?: string;
    type?: string;
}
export interface ConditionSaveResponse extends ResponseBody {
    data: ConditionEntity;
}
export declare type ConditionUpdateParams = Omit<ConditionSaveParams, 'suffix'>;
export interface ConditionUpdateRes extends ResponseBody {
    data: ConditionEntity[];
}
export declare type ConditionDeleteParams = CommonDeleteParams;
export interface ConditionDeleteRes extends ResponseBody {
    data: ConditionEntity[];
}
export declare type ConditionPublishParams = CommonPublishParams;
export declare type ConditionDetailFetchParams = Omit<CommonFetchParams, 'organizationId'>;
