declare namespace Api {
  interface IUser {
    CName: string;
    IsSuper: boolean;
    DefaultProject: string;
    Email: string;
    ForbiddenModule: number;
    ID: number;
    Mobile: string;
    UserName: string;
    IsDepLeader: number;
    Status: number;
    UserType: number;
    is_accountant: number;
    is_leader: number;
    is_opt_mgr: number;
    is_wty_mgr: number;
  }
  interface IAccess {
    [key: string]: boolean;
  }
  interface IResponseStructure {
    code: number;
    data: any;
    msg?: string;
  }
  interface IProject {
    Name: string;
    ID: number;
    Code: string;
    Position: string;
    Province: string;
    ScreenShot: string;
    Remark: string;
    Type: string;
    UndertakenUnit: string;
    User: IUser[];
    WaterName: string;
    WaterStandard: string;
    ServiceScope: string;
    ServiceTime: string;
    MainProcess: string;
    ImageUrl: string;
    ConstructionUnit: string;
    CompanyName: string;
    Accountant: number;
    CarouselFlag: number;
    Classification: number;
    CompanyNumber: number;
    ConstructAlarmFlag: number;
    CurrentDuration: number;
    CurrentOperatorNum: number;
    DepartmentManager: number;
    Duration: number;
    ElectricalDesigner: number;
    LeaderId: number;
    MechanicalDesigner: number;
    OpsAlarmFlag: number;
    OptManager: number;
    PreSaleManager: number;
    PurchaseManager: number;
    SiteManager: number;
    Stage: number;
    Status: number;
    TechnicalDesigner: number;
    WtyManager: number;
    Leader: IUser | null;
    WtyManagerUser: IUser | null;
    TechnicalDesignerUser: IUser | null;
    SiteManagerUser: IUser | null;
    PurchaseManagerUser: IUser | null;
    PreSaleManagerUser: IUser | null;
    OptManagerUser: IUser | null;
    MechanicalDesignerUser: IUser | null;
  }
}
