import { IBaseOption } from "../../UI/Store/OptionInterface/IOptionInterface";
export declare enum ArrayType {
    Rectangle = "R",
    Circle = "C",
    Curve = "Cu"
}
export declare enum CirArrMethod {
    itemsAndAngle = 0,
    itemsAndBeAngle = 1,
    fillAngleAndBeAngle = 2
}
export declare enum Pick {
    centerPoint = 0,
    rowOffset = 2,
    colOffset = 3,
    rowAndColOffset = 7,
    arrayAngle = 4,
    fillAngle = 5,
    betweenAngle = 6
}
export interface ArrayOptioins extends IBaseOption {
    row: number;
    col: number;
    type: ArrayType;
    rowOffset: number;
    colOffset: number;
    arrayAngle: number;
    x: number;
    y: number;
    itemTotal: number;
    fillAngle: number;
    betweenAngle: number;
    method: CirArrMethod;
    isCorrect: boolean;
}
export declare const DefaultArrayOption: ArrayOptioins;
export declare enum ArrayAlign {
    Left = "Left",
    Right = "Right",
    Top = "Top",
    Down = "Down",
    Front = "Front",
    Back = "Back",
    Middle = "Middle",
    BothMiddle = "BothMiddle"
}
export declare enum ArrayMiddleAlign {
    CenterPoint = "CenterPoint",//按模块中心点等分
    Interval = "Interval"
}
export declare enum ArrayTemplateOptionList {
    LeftStaySpace = "LeftStaySpace",
    RightStaySpace = "RightStaySpace",
    TopStaySpace = "TopStaySpace",
    DownStaySpace = "DownStaySpace",
    FrontStaySpace = "FrontStaySpace",
    BackStaySpace = "BackStaySpace",
    XCount = "XCount",
    YCount = "YCount",
    ZCount = "ZCount",
    XAlignSpace = "XAlignSpace",
    YAlignSpace = "YAlignSpace",
    ZAlignSpace = "ZAlignSpace",
    StartSpace = "StartSpace",
    EndSpace = "EndSpace",
    FixedValue = "FixedValue",
    CurveArrayCount = "CurveArrayCount",
    PX = "PX",
    PY = "PY",
    PZ = "PZ",
    RX = "RX",
    RY = "RY",
    RZ = "RZ"
}
export declare enum ZDirType {
    Vertical = "0",
    Parallel = "1"
}
export declare enum CurveAlign {
    Middle = "0",
    BothMiddle = "1",
    Fixed = "2"
}
export declare enum CurveAlignLocation {
    BeginStart = "0",
    BeginEnd = "1"
}
export declare enum CurveYAxis {
    Top = "0",
    Down = "1"
}
export interface ArrayTemplateOptions extends IBaseOption {
    type: ArrayType;
    tempId?: string;
    tempLogo?: string;
    tempName?: string;
    XAlign?: ArrayAlign;
    YAlign?: ArrayAlign;
    ZAlign?: ArrayAlign;
    XMiddleAlign?: ArrayMiddleAlign;
    YMiddleAlign?: ArrayMiddleAlign;
    ZMiddleAlign?: ArrayMiddleAlign;
    [ArrayTemplateOptionList.XCount]?: string;
    [ArrayTemplateOptionList.YCount]?: string;
    [ArrayTemplateOptionList.ZCount]?: string;
    [ArrayTemplateOptionList.BackStaySpace]?: string;
    [ArrayTemplateOptionList.FrontStaySpace]?: string;
    [ArrayTemplateOptionList.TopStaySpace]?: string;
    [ArrayTemplateOptionList.DownStaySpace]?: string;
    [ArrayTemplateOptionList.RightStaySpace]?: string;
    [ArrayTemplateOptionList.LeftStaySpace]?: string;
    [ArrayTemplateOptionList.XAlignSpace]?: string;
    [ArrayTemplateOptionList.YAlignSpace]?: string;
    [ArrayTemplateOptionList.ZAlignSpace]?: string;
    arrayAngle: number;
    x: number;
    y: number;
    itemTotal: number;
    fillAngle: number;
    betweenAngle: number;
    method: CirArrMethod;
    CurveAlign: CurveAlign;
    CurveAlignLocation: CurveAlignLocation;
    CurveMiddleAlign: ArrayMiddleAlign;
    CurveYAxis: CurveYAxis;
    [ArrayTemplateOptionList.PX]: string;
    [ArrayTemplateOptionList.PY]: string;
    [ArrayTemplateOptionList.PZ]: string;
    [ArrayTemplateOptionList.RX]: string;
    [ArrayTemplateOptionList.RY]: string;
    [ArrayTemplateOptionList.RZ]: string;
    [ArrayTemplateOptionList.CurveArrayCount]: string;
    [ArrayTemplateOptionList.FixedValue]: string;
    [ArrayTemplateOptionList.StartSpace]: string;
    [ArrayTemplateOptionList.EndSpace]: string;
}
export declare const DefaultArrayTemplateOption: ArrayTemplateOptions;
//# sourceMappingURL=ArrayOption.d.ts.map