import { CSSProperties, MouseEventHandler } from "react";
export declare type Style = {
    styles?: CSSProperties;
};
export declare type TitleProps = {
    title?: string;
    must?: boolean;
};
/**
 * 输入组件参数
 */
export declare type InputProps = {
    inputHint?: string;
    maxLength?: number;
    tip?: string;
    onTextChanged?: (text: string) => void;
} & TitleProps & Style;
/**
 * 状态组件参数
 */
export declare enum Status {
    LOADING = 0,
    FAILED = 1
}
export declare type StatusProps = {
    status?: Status;
    width?: string | number;
    height?: string | number;
    iconSize?: string | number;
    iconColor?: string;
    text?: string;
    textMargin?: string | number;
    fontSize?: string | number;
    fontColor?: string;
    fontWeight?: number | string;
    backgroundColor?: string;
    backgroundOpacity?: number;
    borderRadius?: string | number;
};
/**
 * 弹层组件按钮
 */
export declare type ModalBtn = {
    btnText: string;
    onClick?: () => void;
};
/**
 * 弹层组件参数
 */
export declare type ModalProps = {
    title?: string;
    content?: string;
    leftBtn?: ModalBtn;
    rightBtn?: ModalBtn;
    dimBackground?: boolean;
    dismissOnOutsideClick?: boolean;
    show: boolean;
};
export declare type RadioProps = {
    label: string;
    value: number;
    selectedValue: number;
    onClick: MouseEventHandler<HTMLDivElement>;
    style?: CSSProperties;
};
export declare type RadioOption = Omit<RadioProps, "selectedValue" | "onClick">;
export declare type RadioGroupProps = TitleProps & Style & {
    options: RadioOption[];
    defaultValue: number;
    valueChanged: (selected: RadioOption) => void;
};
export declare type OrderProps = {
    orderId: string;
    changeOrder: boolean;
    imgUrl: string;
    name: string;
    price: string;
    num: number;
    status: string;
} & Style;
export declare type NumberSelectorProps = {
    defaultValue: number;
    max?: number;
    valueChanged: (value: number) => void;
} & TitleProps & Style;
export declare type UploadData = {
    aid: string;
    appId: string;
    clientType: 'm';
    pin: string;
};
/**
 * 图片上传组件参数
 */
export declare type ImgUploaderProps = {
    onUploadStatusChange?: (status: string) => void;
    onResult?: (urls: string[]) => void;
    enableCompress?: boolean;
    limit?: number;
    uploadData?: UploadData;
} & TitleProps & Style;
