/// <reference types="react" />
export interface PackageInfoProps {
    packages: FilterPackageItemModel[];
    currentPackage?: FilterPackageItemModel;
    changeCurrentPackage?: (item: FilterPackageItemModel) => void;
}
export declare type StartAnalysisProps = {
    isConfirmFilter?: boolean;
    size?: string;
    btnLoading?: boolean;
    title: string;
};
export declare type TextLabelsProps = {
    more?: string;
    labelMax?: string;
    labelMin?: string;
    emptyValText?: string;
    allSelectLabel?: string;
    expand?: string;
    collapse?: string;
};
export interface FilterCommProps {
    startAnalysisProps?: StartAnalysisProps;
    fieldValueObj: {
        [key: string]: (React.ReactText | null)[];
    };
    list: FieldItemProps[];
    textLabels?: TextLabelsProps;
}
export interface FieldDetailProps {
    uuid: string;
    hValue: string;
    db: string;
    hType: string;
    name: string;
    sourcePackageUuid: string;
}
export interface FieldItemProps {
    name: string;
    mode: string;
    type: string;
    detail: FieldDetailProps;
    index: number;
    hiddenCustom?: boolean;
    isCombined?: boolean;
}
export interface FilterPackageItemModel {
    [index: string]: any;
    geometryType: string;
    objectType: string;
    packageUuid: string;
    source: string;
}
export interface FieldNumValueProps {
    min?: number;
    max?: number;
}
export interface FieldDateValueProps {
    start?: number | string;
    end?: number | string;
}
export interface FilterItemTemplateProp extends FieldNumValueProps, FieldDateValueProps {
    /** 后端存储的类型 类似于int,float,str, datetime */
    db: string;
    /** 前端存储的类型，类似于number,text, datetime */
    hType: string;
    /** name */
    hValue: string;
    list?: string[];
    canSave?: boolean;
    isLock?: boolean;
}
export interface SuppFilterProps extends FilterPackageItemModel {
    filters: FilterItemTemplateProp[];
}
