import { MyResponseType } from '@/common';
import { request } from '@umijs/max';

export const Apis = {
  Activity: {
    Activities: {
      List(data?: ApiTypes.Activity.Activities.List): Promise<MyResponseType> {
        return request('admin/activity/activities/list', { data });
      },
      Store(data: ApiTypes.Activity.Activities.Store): Promise<MyResponseType> {
        return request('admin/activity/activities/store', { data });
      },
      Update(
        data: ApiTypes.Activity.Activities.Update,
      ): Promise<MyResponseType> {
        return request('admin/activity/activities/update', { data });
      },
      ChangePublishStatus(
        data: ApiTypes.Activity.Activities.ChangePublishStatus,
      ): Promise<MyResponseType> {
        return request('admin/activity/activities/change_publish_status', {
          data,
        });
      },
      Show(data: ApiTypes.Activity.Activities.Show): Promise<MyResponseType> {
        return request('admin/activity/activities/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Activity.Activities.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/activity/activities/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Activity.Activities.Restore,
      ): Promise<MyResponseType> {
        return request('admin/activity/activities/restore', { data });
      },
      Delete(
        data: ApiTypes.Activity.Activities.Delete,
      ): Promise<MyResponseType> {
        return request('admin/activity/activities/delete', { data });
      },
    },
    ActivityEnrolls: {
      List(
        data?: ApiTypes.Activity.ActivityEnrolls.List,
      ): Promise<MyResponseType> {
        return request('admin/activity/activity_enrolls/list', { data });
      },
      Show(
        data: ApiTypes.Activity.ActivityEnrolls.Show,
      ): Promise<MyResponseType> {
        return request('admin/activity/activity_enrolls/show', { data });
      },
      ChangeStatus(
        data: ApiTypes.Activity.ActivityEnrolls.ChangeStatus,
      ): Promise<MyResponseType> {
        return request('admin/activity/activity_enrolls/change_status', {
          data,
        });
      },
    },
  },
  Approval: {
    ApprovalInstances: {
      PendingList(
        data?: ApiTypes.Approval.ApprovalInstances.PendingList,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/pending_list', {
          data,
        });
      },
      PendingCount(): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/pending_count', {});
      },
      MyApplyList(): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/my_apply_list', {});
      },
      Show(
        data: ApiTypes.Approval.ApprovalInstances.Show,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/show', { data });
      },
      Approve(
        data: ApiTypes.Approval.ApprovalInstances.Approve,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/approve', { data });
      },
      Cancel(
        data: ApiTypes.Approval.ApprovalInstances.Cancel,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/cancel', { data });
      },
      Transfer(
        data: ApiTypes.Approval.ApprovalInstances.Transfer,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/transfer', { data });
      },
      List(
        data?: ApiTypes.Approval.ApprovalInstances.List,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/list', { data });
      },
      ProcessedList(
        data?: ApiTypes.Approval.ApprovalInstances.ProcessedList,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/processed_list', {
          data,
        });
      },
      CcList(
        data?: ApiTypes.Approval.ApprovalInstances.CcList,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_instances/cc_list', { data });
      },
    },
    ApprovalTemplates: {
      List(
        data?: ApiTypes.Approval.ApprovalTemplates.List,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/list', { data });
      },
      Store(
        data: ApiTypes.Approval.ApprovalTemplates.Store,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/store', { data });
      },
      Update(
        data: ApiTypes.Approval.ApprovalTemplates.Update,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/update', { data });
      },
      Show(
        data: ApiTypes.Approval.ApprovalTemplates.Show,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Approval.ApprovalTemplates.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Approval.ApprovalTemplates.Restore,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/restore', { data });
      },
      Delete(
        data: ApiTypes.Approval.ApprovalTemplates.Delete,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/delete', { data });
      },
      ToggleEnabled(
        data: ApiTypes.Approval.ApprovalTemplates.ToggleEnabled,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/toggle_enabled', {
          data,
        });
      },
      ReplaceApprover(
        data: ApiTypes.Approval.ApprovalTemplates.ReplaceApprover,
      ): Promise<MyResponseType> {
        return request('admin/approval/approval_templates/replace_approver', {
          data,
        });
      },
    },
  },
  Archive: {
    HouseOccupants: {
      List(
        data?: ApiTypes.Archive.HouseOccupants.List,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/list', { data });
      },
      CustomerList(
        data?: ApiTypes.Archive.HouseOccupants.CustomerList,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/customer_list', { data });
      },
      CustomerHouseByPhone(
        data: ApiTypes.Archive.HouseOccupants.CustomerHouseByPhone,
      ): Promise<MyResponseType> {
        return request(
          'admin/archive/house_occupants/customer_house_by_phone',
          { data },
        );
      },
      Update(
        data: ApiTypes.Archive.HouseOccupants.Update,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/update', { data });
      },
      Show(
        data: ApiTypes.Archive.HouseOccupants.Show,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/show', { data });
      },
      Delete(
        data: ApiTypes.Archive.HouseOccupants.Delete,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/delete', { data });
      },
      ChangeIsContact(
        data: ApiTypes.Archive.HouseOccupants.ChangeIsContact,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/change_is_contact', {
          data,
        });
      },
      Import(
        data?: ApiTypes.Archive.HouseOccupants.Import,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/archive/house_occupants/download_template', {
          responseType: 'blob',
        });
      },
    },
    HouseRegisters: {
      List(
        data?: ApiTypes.Archive.HouseRegisters.List,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/list', { data });
      },
      Store(
        data: ApiTypes.Archive.HouseRegisters.Store,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/store', { data });
      },
      Update(
        data: ApiTypes.Archive.HouseRegisters.Update,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/update', { data });
      },
      MoveOut(
        data: ApiTypes.Archive.HouseRegisters.MoveOut,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/move_out', { data });
      },
      MoveIn(
        data: ApiTypes.Archive.HouseRegisters.MoveIn,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/move_in', { data });
      },
      RemoveOwner(
        data: ApiTypes.Archive.HouseRegisters.RemoveOwner,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/remove_owner', { data });
      },
      ChangeOccupant(
        data: ApiTypes.Archive.HouseRegisters.ChangeOccupant,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/change_occupant', {
          data,
        });
      },
      Show(
        data: ApiTypes.Archive.HouseRegisters.Show,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/show', { data });
      },
      Audit(
        data: ApiTypes.Archive.HouseRegisters.Audit,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/audit', { data });
      },
      SoftDelete(
        data: ApiTypes.Archive.HouseRegisters.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Archive.HouseRegisters.Restore,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/restore', { data });
      },
      Delete(
        data: ApiTypes.Archive.HouseRegisters.Delete,
      ): Promise<MyResponseType> {
        return request('admin/archive/house_registers/delete', { data });
      },
    },
  },
  Asset: {
    AssetBuildings: {
      List(data?: ApiTypes.Asset.AssetBuildings.List): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/list', { data });
      },
      Store(
        data: ApiTypes.Asset.AssetBuildings.Store,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/store', { data });
      },
      Update(
        data: ApiTypes.Asset.AssetBuildings.Update,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/update', { data });
      },
      Show(data: ApiTypes.Asset.AssetBuildings.Show): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/show', { data });
      },
      Delete(
        data: ApiTypes.Asset.AssetBuildings.Delete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/delete', { data });
      },
      Select(
        data?: ApiTypes.Asset.AssetBuildings.Select,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_buildings/select', { data });
      },
    },
    AssetCarPorts: {
      List(data?: ApiTypes.Asset.AssetCarPorts.List): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/list', { data });
      },
      Store(data: ApiTypes.Asset.AssetCarPorts.Store): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/store', { data });
      },
      Update(
        data: ApiTypes.Asset.AssetCarPorts.Update,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/update', { data });
      },
      Show(data: ApiTypes.Asset.AssetCarPorts.Show): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Asset.AssetCarPorts.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Asset.AssetCarPorts.Restore,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/restore', { data });
      },
      Delete(
        data: ApiTypes.Asset.AssetCarPorts.Delete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/delete', { data });
      },
      Select(
        data?: ApiTypes.Asset.AssetCarPorts.Select,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/select', { data });
      },
      Import(
        data: ApiTypes.Asset.AssetCarPorts.Import,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/download_template', {
          responseType: 'blob',
        });
      },
      Export(
        data: ApiTypes.Asset.AssetCarPorts.Export,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_car_ports/export', {
          responseType: 'blob',
          data,
        });
      },
    },
    AssetHouses: {
      List(data?: ApiTypes.Asset.AssetHouses.List): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/list', { data });
      },
      Store(data: ApiTypes.Asset.AssetHouses.Store): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/store', { data });
      },
      Update(data: ApiTypes.Asset.AssetHouses.Update): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/update', { data });
      },
      Show(data: ApiTypes.Asset.AssetHouses.Show): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/show', { data });
      },
      Delete(data: ApiTypes.Asset.AssetHouses.Delete): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/delete', { data });
      },
      Select(
        data?: ApiTypes.Asset.AssetHouses.Select,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/select', { data });
      },
      SelectFullName(
        data?: ApiTypes.Asset.AssetHouses.SelectFullName,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/select_full_name', { data });
      },
      Import(
        data?: ApiTypes.Asset.AssetHouses.Import,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/download_template', {
          responseType: 'blob',
        });
      },
      Export(data: ApiTypes.Asset.AssetHouses.Export): Promise<MyResponseType> {
        return request('admin/asset/asset_houses/export', {
          responseType: 'blob',
          data,
        });
      },
    },
    AssetParkingPlaces: {
      List(
        data?: ApiTypes.Asset.AssetParkingPlaces.List,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/list', { data });
      },
      Store(
        data: ApiTypes.Asset.AssetParkingPlaces.Store,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/store', { data });
      },
      Update(
        data: ApiTypes.Asset.AssetParkingPlaces.Update,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/update', { data });
      },
      Show(
        data: ApiTypes.Asset.AssetParkingPlaces.Show,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Asset.AssetParkingPlaces.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Asset.AssetParkingPlaces.Restore,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/restore', { data });
      },
      Delete(
        data: ApiTypes.Asset.AssetParkingPlaces.Delete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/delete', { data });
      },
      Select(
        data?: ApiTypes.Asset.AssetParkingPlaces.Select,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_parking_places/select', { data });
      },
    },
    AssetProjectAdmins: {
      List(
        data?: ApiTypes.Asset.AssetProjectAdmins.List,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_project_admins/list', { data });
      },
      Store(
        data: ApiTypes.Asset.AssetProjectAdmins.Store,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_project_admins/store', { data });
      },
      Show(
        data: ApiTypes.Asset.AssetProjectAdmins.Show,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_project_admins/show', { data });
      },
      Delete(
        data: ApiTypes.Asset.AssetProjectAdmins.Delete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_project_admins/delete', { data });
      },
    },
    AssetProjects: {
      List(data?: ApiTypes.Asset.AssetProjects.List): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/list', { data });
      },
      Store(data: ApiTypes.Asset.AssetProjects.Store): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/store', { data });
      },
      Update(
        data: ApiTypes.Asset.AssetProjects.Update,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/update', { data });
      },
      BindCompany(
        data: ApiTypes.Asset.AssetProjects.BindCompany,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/bind_company', { data });
      },
      ChangePropertyBrand(
        data: ApiTypes.Asset.AssetProjects.ChangePropertyBrand,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/change_property_brand', {
          data,
        });
      },
      Show(data: ApiTypes.Asset.AssetProjects.Show): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Asset.AssetProjects.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Asset.AssetProjects.Restore,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/restore', { data });
      },
      Delete(
        data: ApiTypes.Asset.AssetProjects.Delete,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/delete', { data });
      },
      Select(
        data?: ApiTypes.Asset.AssetProjects.Select,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/select', { data });
      },
      Import(
        data?: ApiTypes.Asset.AssetProjects.Import,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/asset/asset_projects/download_template', {
          responseType: 'blob',
        });
      },
    },
    AssetUnits: {
      List(data?: ApiTypes.Asset.AssetUnits.List): Promise<MyResponseType> {
        return request('admin/asset/asset_units/list', { data });
      },
      Store(data: ApiTypes.Asset.AssetUnits.Store): Promise<MyResponseType> {
        return request('admin/asset/asset_units/store', { data });
      },
      Update(data: ApiTypes.Asset.AssetUnits.Update): Promise<MyResponseType> {
        return request('admin/asset/asset_units/update', { data });
      },
      Show(data: ApiTypes.Asset.AssetUnits.Show): Promise<MyResponseType> {
        return request('admin/asset/asset_units/show', { data });
      },
      Delete(data: ApiTypes.Asset.AssetUnits.Delete): Promise<MyResponseType> {
        return request('admin/asset/asset_units/delete', { data });
      },
      Select(data?: ApiTypes.Asset.AssetUnits.Select): Promise<MyResponseType> {
        return request('admin/asset/asset_units/select', { data });
      },
      GridSelect(
        data?: ApiTypes.Asset.AssetUnits.GridSelect,
      ): Promise<MyResponseType> {
        return request('admin/asset/asset_units/grid_select', { data });
      },
    },
  },
  Attendance: {
    AttendanceConfigs: {
      List(
        data?: ApiTypes.Attendance.AttendanceConfigs.List,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_configs/list', { data });
      },
      Store(
        data: ApiTypes.Attendance.AttendanceConfigs.Store,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_configs/store', { data });
      },
      UpdateConfig(
        data: ApiTypes.Attendance.AttendanceConfigs.UpdateConfig,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_configs/update_config', {
          data,
        });
      },
      Enable(
        data: ApiTypes.Attendance.AttendanceConfigs.Enable,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_configs/enable', { data });
      },
    },
    AttendanceEmployeeTracks: {
      List(
        data?: ApiTypes.Attendance.AttendanceEmployeeTracks.List,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_employee_tracks/list', {
          data,
        });
      },
      Detail(
        data: ApiTypes.Attendance.AttendanceEmployeeTracks.Detail,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_employee_tracks/detail', {
          data,
        });
      },
    },
    AttendanceRecords: {
      List(
        data?: ApiTypes.Attendance.AttendanceRecords.List,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_records/list', { data });
      },
      Show(
        data: ApiTypes.Attendance.AttendanceRecords.Show,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_records/show', { data });
      },
      Export(
        data?: ApiTypes.Attendance.AttendanceRecords.Export,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_records/export', {
          responseType: 'blob',
          data,
        });
      },
    },
    AttendanceSchedules: {
      List(
        data?: ApiTypes.Attendance.AttendanceSchedules.List,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/list', { data });
      },
      Store(
        data: ApiTypes.Attendance.AttendanceSchedules.Store,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/store', { data });
      },
      BatchStore(
        data: ApiTypes.Attendance.AttendanceSchedules.BatchStore,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/batch_store', {
          data,
        });
      },
      Update(
        data: ApiTypes.Attendance.AttendanceSchedules.Update,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/update', {
          data,
        });
      },
      ChangeStatus(
        data: ApiTypes.Attendance.AttendanceSchedules.ChangeStatus,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/change_status', {
          data,
        });
      },
      Cancel(
        data: ApiTypes.Attendance.AttendanceSchedules.Cancel,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/cancel', {
          data,
        });
      },
      Show(
        data: ApiTypes.Attendance.AttendanceSchedules.Show,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Attendance.AttendanceSchedules.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Attendance.AttendanceSchedules.Restore,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Attendance.AttendanceSchedules.Delete,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_schedules/delete', {
          data,
        });
      },
    },
    AttendanceShifts: {
      List(
        data?: ApiTypes.Attendance.AttendanceShifts.List,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_shifts/list', { data });
      },
      Store(
        data: ApiTypes.Attendance.AttendanceShifts.Store,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_shifts/store', { data });
      },
      Update(
        data: ApiTypes.Attendance.AttendanceShifts.Update,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_shifts/update', { data });
      },
      Show(
        data: ApiTypes.Attendance.AttendanceShifts.Show,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_shifts/show', { data });
      },
      Delete(
        data: ApiTypes.Attendance.AttendanceShifts.Delete,
      ): Promise<MyResponseType> {
        return request('admin/attendance/attendance_shifts/delete', { data });
      },
    },
  },
  Banner: {
    BannerSpaces: {
      List(data?: ApiTypes.Banner.BannerSpaces.List): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/list', { data });
      },
      Store(data: ApiTypes.Banner.BannerSpaces.Store): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/store', { data });
      },
      Update(
        data: ApiTypes.Banner.BannerSpaces.Update,
      ): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/update', { data });
      },
      Show(data: ApiTypes.Banner.BannerSpaces.Show): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/show', { data });
      },
      Delete(
        data: ApiTypes.Banner.BannerSpaces.Delete,
      ): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/delete', { data });
      },
      Select(
        data?: ApiTypes.Banner.BannerSpaces.Select,
      ): Promise<MyResponseType> {
        return request('admin/banner/banner_spaces/select', { data });
      },
    },
    Banners: {
      List(data?: ApiTypes.Banner.Banners.List): Promise<MyResponseType> {
        return request('admin/banner/banners/list', { data });
      },
      Store(data: ApiTypes.Banner.Banners.Store): Promise<MyResponseType> {
        return request('admin/banner/banners/store', { data });
      },
      Update(data: ApiTypes.Banner.Banners.Update): Promise<MyResponseType> {
        return request('admin/banner/banners/update', { data });
      },
      Show(data: ApiTypes.Banner.Banners.Show): Promise<MyResponseType> {
        return request('admin/banner/banners/show', { data });
      },
      Delete(data: ApiTypes.Banner.Banners.Delete): Promise<MyResponseType> {
        return request('admin/banner/banners/delete', { data });
      },
    },
  },
  Bill: {
    HouseBills: {
      List(data?: ApiTypes.Bill.HouseBills.List): Promise<MyResponseType> {
        return request('admin/bill/house_bills/list', { data });
      },
      SummaryBillList(
        data?: ApiTypes.Bill.HouseBills.SummaryBillList,
      ): Promise<MyResponseType> {
        return request('admin/bill/house_bills/summary_bill_list', { data });
      },
      Store(data: ApiTypes.Bill.HouseBills.Store): Promise<MyResponseType> {
        return request('admin/bill/house_bills/store', { data });
      },
      Update(data: ApiTypes.Bill.HouseBills.Update): Promise<MyResponseType> {
        return request('admin/bill/house_bills/update', { data });
      },
      Show(data: ApiTypes.Bill.HouseBills.Show): Promise<MyResponseType> {
        return request('admin/bill/house_bills/show', { data });
      },
      SummaryShow(
        data: ApiTypes.Bill.HouseBills.SummaryShow,
      ): Promise<MyResponseType> {
        return request('admin/bill/house_bills/summary_show', { data });
      },
      SoftDelete(
        data: ApiTypes.Bill.HouseBills.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/bill/house_bills/soft_delete', { data });
      },
      Restore(data: ApiTypes.Bill.HouseBills.Restore): Promise<MyResponseType> {
        return request('admin/bill/house_bills/restore', { data });
      },
      Delete(data: ApiTypes.Bill.HouseBills.Delete): Promise<MyResponseType> {
        return request('admin/bill/house_bills/delete', { data });
      },
      Import(data?: ApiTypes.Bill.HouseBills.Import): Promise<MyResponseType> {
        return request('admin/bill/house_bills/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/bill/house_bills/download_template', {
          responseType: 'blob',
        });
      },
      Export(data: ApiTypes.Bill.HouseBills.Export): Promise<MyResponseType> {
        return request('admin/bill/house_bills/export', {
          responseType: 'blob',
          data,
        });
      },
    },
  },
  Collcetion: {
    HouseCollectionRecords: {
      List(
        data?: ApiTypes.Collcetion.HouseCollectionRecords.List,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_records/list', {
          data,
        });
      },
      Show(
        data: ApiTypes.Collcetion.HouseCollectionRecords.Show,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_records/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Collcetion.HouseCollectionRecords.Delete,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_records/delete', {
          data,
        });
      },
    },
    HouseCollectionTasks: {
      List(
        data?: ApiTypes.Collcetion.HouseCollectionTasks.List,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_tasks/list', {
          data,
        });
      },
      Show(
        data: ApiTypes.Collcetion.HouseCollectionTasks.Show,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_tasks/show', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.Collcetion.HouseCollectionTasks.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_tasks/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Collcetion.HouseCollectionTasks.Restore,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_tasks/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Collcetion.HouseCollectionTasks.Delete,
      ): Promise<MyResponseType> {
        return request('admin/collcetion/house_collection_tasks/delete', {
          data,
        });
      },
    },
  },
  Common: {
    Admins: {
      List(data?: ApiTypes.Common.Admins.List): Promise<MyResponseType> {
        return request('admin/common/admins/list', { data });
      },
      Store(data: ApiTypes.Common.Admins.Store): Promise<MyResponseType> {
        return request('admin/common/admins/store', { data });
      },
      Update(data: ApiTypes.Common.Admins.Update): Promise<MyResponseType> {
        return request('admin/common/admins/update', { data });
      },
      Delete(data: ApiTypes.Common.Admins.Delete): Promise<MyResponseType> {
        return request('admin/common/admins/delete', { data });
      },
      Select(data?: ApiTypes.Common.Admins.Select): Promise<MyResponseType> {
        return request('admin/common/admins/select', { data });
      },
    },
    Auth: {
      Captcha(): Promise<MyResponseType> {
        return request('admin/common/auth/captcha', {});
      },
      Login(data: ApiTypes.Common.Auth.Login): Promise<MyResponseType> {
        return request('admin/common/auth/login', { data });
      },
      Logout(): Promise<MyResponseType> {
        return request('admin/common/auth/logout', {});
      },
      Me(): Promise<MyResponseType> {
        return request('admin/common/auth/me', {});
      },
      ChangePassword(
        data: ApiTypes.Common.Auth.ChangePassword,
      ): Promise<MyResponseType> {
        return request('admin/common/auth/change_password', { data });
      },
      PreUpload(data: ApiTypes.Common.Auth.PreUpload): Promise<MyResponseType> {
        return request('admin/common/auth/pre_upload', { data });
      },
      TemporaryUrl(
        data: ApiTypes.Common.Auth.TemporaryUrl,
      ): Promise<MyResponseType> {
        return request('admin/common/auth/temporary_url', { data });
      },
    },
    ConvenienceServices: {
      List(
        data?: ApiTypes.Common.ConvenienceServices.List,
      ): Promise<MyResponseType> {
        return request('admin/common/convenience_services/list', { data });
      },
      Store(
        data: ApiTypes.Common.ConvenienceServices.Store,
      ): Promise<MyResponseType> {
        return request('admin/common/convenience_services/store', { data });
      },
      Update(
        data: ApiTypes.Common.ConvenienceServices.Update,
      ): Promise<MyResponseType> {
        return request('admin/common/convenience_services/update', { data });
      },
      Show(
        data: ApiTypes.Common.ConvenienceServices.Show,
      ): Promise<MyResponseType> {
        return request('admin/common/convenience_services/show', { data });
      },
      Delete(
        data: ApiTypes.Common.ConvenienceServices.Delete,
      ): Promise<MyResponseType> {
        return request('admin/common/convenience_services/delete', { data });
      },
    },
    Positions: {
      List(data?: ApiTypes.Common.Positions.List): Promise<MyResponseType> {
        return request('admin/common/positions/list', { data });
      },
      Store(data: ApiTypes.Common.Positions.Store): Promise<MyResponseType> {
        return request('admin/common/positions/store', { data });
      },
      Update(data: ApiTypes.Common.Positions.Update): Promise<MyResponseType> {
        return request('admin/common/positions/update', { data });
      },
      Show(data: ApiTypes.Common.Positions.Show): Promise<MyResponseType> {
        return request('admin/common/positions/show', { data });
      },
      Delete(data: ApiTypes.Common.Positions.Delete): Promise<MyResponseType> {
        return request('admin/common/positions/delete', { data });
      },
      Select(data?: ApiTypes.Common.Positions.Select): Promise<MyResponseType> {
        return request('admin/common/positions/select', { data });
      },
    },
  },
  Company: {
    Companies: {
      List(data?: ApiTypes.Company.Companies.List): Promise<MyResponseType> {
        return request('admin/company/companies/list', { data });
      },
      Store(data: ApiTypes.Company.Companies.Store): Promise<MyResponseType> {
        return request('admin/company/companies/store', { data });
      },
      Update(data: ApiTypes.Company.Companies.Update): Promise<MyResponseType> {
        return request('admin/company/companies/update', { data });
      },
      Show(data: ApiTypes.Company.Companies.Show): Promise<MyResponseType> {
        return request('admin/company/companies/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Company.Companies.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/company/companies/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Company.Companies.Restore,
      ): Promise<MyResponseType> {
        return request('admin/company/companies/restore', { data });
      },
      Delete(data: ApiTypes.Company.Companies.Delete): Promise<MyResponseType> {
        return request('admin/company/companies/delete', { data });
      },
      Select(
        data?: ApiTypes.Company.Companies.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/companies/select', { data });
      },
    },
    CompanyApps: {
      List(data: ApiTypes.Company.CompanyApps.List): Promise<MyResponseType> {
        return request('admin/company/company_apps/list', { data });
      },
      Store(data: ApiTypes.Company.CompanyApps.Store): Promise<MyResponseType> {
        return request('admin/company/company_apps/store', { data });
      },
      Update(
        data: ApiTypes.Company.CompanyApps.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_apps/update', { data });
      },
      Show(data: ApiTypes.Company.CompanyApps.Show): Promise<MyResponseType> {
        return request('admin/company/company_apps/show', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyApps.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_apps/delete', { data });
      },
    },
    CompanyConfigs: {
      List(
        data?: ApiTypes.Company.CompanyConfigs.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyConfigs.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/store', { data });
      },
      Update(
        data: ApiTypes.Company.CompanyConfigs.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/update', { data });
      },
      GetDetail(
        data: ApiTypes.Company.CompanyConfigs.GetDetail,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/get_detail', { data });
      },
      Show(
        data: ApiTypes.Company.CompanyConfigs.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/show', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyConfigs.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_configs/delete', { data });
      },
    },
    CompanyEmployees: {
      List(
        data?: ApiTypes.Company.CompanyEmployees.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyEmployees.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/store', { data });
      },
      Update(
        data: ApiTypes.Company.CompanyEmployees.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/update', { data });
      },
      ResetPassword(
        data: ApiTypes.Company.CompanyEmployees.ResetPassword,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/reset_password', {
          data,
        });
      },
      Show(
        data: ApiTypes.Company.CompanyEmployees.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Company.CompanyEmployees.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Company.CompanyEmployees.Restore,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/restore', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyEmployees.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/delete', { data });
      },
      Select(
        data?: ApiTypes.Company.CompanyEmployees.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/select', { data });
      },
      Import(
        data: ApiTypes.Company.CompanyEmployees.Import,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/company/company_employees/download_template', {
          responseType: 'blob',
        });
      },
      Export(
        data?: ApiTypes.Company.CompanyEmployees.Export,
      ): Promise<MyResponseType> {
        return request('admin/company/company_employees/export', {
          responseType: 'blob',
          data,
        });
      },
    },
    CompanyPermissions: {
      GetPermissions(
        data: ApiTypes.Company.CompanyPermissions.GetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/company/company_permissions/get_permissions', {
          data,
        });
      },
      SetPermissions(
        data: ApiTypes.Company.CompanyPermissions.SetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/company/company_permissions/set_permissions', {
          data,
        });
      },
      PermissionTree(): Promise<MyResponseType> {
        return request('admin/company/company_permissions/permission_tree', {});
      },
    },
    CompanyPositions: {
      List(
        data?: ApiTypes.Company.CompanyPositions.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyPositions.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/store', { data });
      },
      Update(
        data: ApiTypes.Company.CompanyPositions.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/update', { data });
      },
      BatchStore(
        data: ApiTypes.Company.CompanyPositions.BatchStore,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/batch_store', { data });
      },
      Show(
        data: ApiTypes.Company.CompanyPositions.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/show', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyPositions.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/delete', { data });
      },
      Select(
        data?: ApiTypes.Company.CompanyPositions.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/company_positions/select', { data });
      },
    },
    CompanyProjectReceiptAccounts: {
      List(
        data?: ApiTypes.Company.CompanyProjectReceiptAccounts.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_project_receipt_accounts/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.Company.CompanyProjectReceiptAccounts.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_project_receipt_accounts/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.Company.CompanyProjectReceiptAccounts.Update,
      ): Promise<MyResponseType> {
        return request(
          'admin/company/company_project_receipt_accounts/update',
          { data },
        );
      },
      Show(
        data: ApiTypes.Company.CompanyProjectReceiptAccounts.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_project_receipt_accounts/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Company.CompanyProjectReceiptAccounts.Delete,
      ): Promise<MyResponseType> {
        return request(
          'admin/company/company_project_receipt_accounts/delete',
          { data },
        );
      },
      Select(
        data?: ApiTypes.Company.CompanyProjectReceiptAccounts.Select,
      ): Promise<MyResponseType> {
        return request(
          'admin/company/company_project_receipt_accounts/select',
          { data },
        );
      },
      ProjectReceiptAccountsSelect(
        data?: ApiTypes.Company.CompanyProjectReceiptAccounts.ProjectReceiptAccountsSelect,
      ): Promise<MyResponseType> {
        return request(
          'admin/company/company_project_receipt_accounts/project_receipt_accounts_select',
          { data },
        );
      },
    },
    CompanyPropertyBrands: {
      List(
        data?: ApiTypes.Company.CompanyPropertyBrands.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyPropertyBrands.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/store', { data });
      },
      Update(
        data: ApiTypes.Company.CompanyPropertyBrands.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.Company.CompanyPropertyBrands.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/show', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyPropertyBrands.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/delete', {
          data,
        });
      },
      Select(
        data?: ApiTypes.Company.CompanyPropertyBrands.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/company_property_brands/select', {
          data,
        });
      },
    },
    CompanyQuickActions: {
      List(
        data: ApiTypes.Company.CompanyQuickActions.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyQuickActions.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/store', { data });
      },
      BatchStore(
        data: ApiTypes.Company.CompanyQuickActions.BatchStore,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/batch_store', {
          data,
        });
      },
      Update(
        data: ApiTypes.Company.CompanyQuickActions.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/update', { data });
      },
      Show(
        data: ApiTypes.Company.CompanyQuickActions.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/show', { data });
      },
      Delete(
        data: ApiTypes.Company.CompanyQuickActions.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_quick_actions/delete', { data });
      },
    },
    CompanyReceiptAccounts: {
      List(
        data?: ApiTypes.Company.CompanyReceiptAccounts.List,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/list', { data });
      },
      Store(
        data: ApiTypes.Company.CompanyReceiptAccounts.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.Company.CompanyReceiptAccounts.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.Company.CompanyReceiptAccounts.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Company.CompanyReceiptAccounts.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Company.CompanyReceiptAccounts.Restore,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Company.CompanyReceiptAccounts.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/delete', {
          data,
        });
      },
      Select(
        data?: ApiTypes.Company.CompanyReceiptAccounts.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/company_receipt_accounts/select', {
          data,
        });
      },
    },
    OrganizationProjects: {
      List(
        data?: ApiTypes.Company.OrganizationProjects.List,
      ): Promise<MyResponseType> {
        return request('admin/company/organization_projects/list', { data });
      },
      Store(
        data: ApiTypes.Company.OrganizationProjects.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/organization_projects/store', { data });
      },
      BatchStore(
        data: ApiTypes.Company.OrganizationProjects.BatchStore,
      ): Promise<MyResponseType> {
        return request('admin/company/organization_projects/batch_store', {
          data,
        });
      },
      Show(
        data: ApiTypes.Company.OrganizationProjects.Show,
      ): Promise<MyResponseType> {
        return request('admin/company/organization_projects/show', { data });
      },
      Delete(
        data: ApiTypes.Company.OrganizationProjects.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/organization_projects/delete', { data });
      },
      DeleteByOrganization(
        data: ApiTypes.Company.OrganizationProjects.DeleteByOrganization,
      ): Promise<MyResponseType> {
        return request(
          'admin/company/organization_projects/delete_by_organization',
          { data },
        );
      },
    },
    Organizations: {
      List(
        data?: ApiTypes.Company.Organizations.List,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/list', { data });
      },
      TreeList(
        data?: ApiTypes.Company.Organizations.TreeList,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/tree_list', { data });
      },
      Store(
        data: ApiTypes.Company.Organizations.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/store', { data });
      },
      Update(
        data: ApiTypes.Company.Organizations.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/update', { data });
      },
      Move(data: ApiTypes.Company.Organizations.Move): Promise<MyResponseType> {
        return request('admin/company/organizations/move', { data });
      },
      Show(data: ApiTypes.Company.Organizations.Show): Promise<MyResponseType> {
        return request('admin/company/organizations/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Company.Organizations.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Company.Organizations.Restore,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/restore', { data });
      },
      Delete(
        data: ApiTypes.Company.Organizations.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/delete', { data });
      },
      Select(
        data?: ApiTypes.Company.Organizations.Select,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/select', { data });
      },
      SelectTree(
        data?: ApiTypes.Company.Organizations.SelectTree,
      ): Promise<MyResponseType> {
        return request('admin/company/organizations/select_tree', { data });
      },
    },
    EmployeeRoles: {
      List(
        data?: ApiTypes.Employee.EmployeeRoles.List,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/list', { data });
      },
      Store(
        data: ApiTypes.Employee.EmployeeRoles.Store,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/store', { data });
      },
      Update(
        data: ApiTypes.Employee.EmployeeRoles.Update,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/update', { data });
      },
      Delete(
        data: ApiTypes.Employee.EmployeeRoles.Delete,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/delete', { data });
      },
      GetPermissions(
        data: ApiTypes.Employee.EmployeeRoles.GetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/get_permissions', {
          data,
        });
      },
      SetPermissions(
        data: ApiTypes.Employee.EmployeeRoles.SetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/company/employee_roles/set_permissions', {
          data,
        });
      },
      PermissionTree(): Promise<MyResponseType> {
        return request('admin/company/employee_roles/permission_tree', {});
      },
    },
  },
  Customer: {
    CustomerMomentCategories: {
      List(
        data?: ApiTypes.Customer.CustomerMomentCategories.List,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.Customer.CustomerMomentCategories.Store,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.Customer.CustomerMomentCategories.Update,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.Customer.CustomerMomentCategories.Show,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/show', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.Customer.CustomerMomentCategories.SoftDelete,
      ): Promise<MyResponseType> {
        return request(
          'admin/customer/customer_moment_categories/soft_delete',
          { data },
        );
      },
      Restore(
        data: ApiTypes.Customer.CustomerMomentCategories.Restore,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Customer.CustomerMomentCategories.Delete,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moment_categories/delete', {
          data,
        });
      },
      SelectTree(
        data?: ApiTypes.Customer.CustomerMomentCategories.SelectTree,
      ): Promise<MyResponseType> {
        return request(
          'admin/customer/customer_moment_categories/select_tree',
          { data },
        );
      },
    },
    CustomerMoments: {
      List(
        data?: ApiTypes.Customer.CustomerMoments.List,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moments/list', { data });
      },
      Store(
        data: ApiTypes.Customer.CustomerMoments.Store,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moments/store', { data });
      },
      Update(
        data: ApiTypes.Customer.CustomerMoments.Update,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moments/update', { data });
      },
      Show(
        data: ApiTypes.Customer.CustomerMoments.Show,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moments/show', { data });
      },
      Send(
        data: ApiTypes.Customer.CustomerMoments.Send,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_moments/send', { data });
      },
    },
    CustomerOpinions: {
      List(
        data?: ApiTypes.Customer.CustomerOpinions.List,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_opinions/list', { data });
      },
      Show(
        data: ApiTypes.Customer.CustomerOpinions.Show,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_opinions/show', { data });
      },
      Delete(
        data: ApiTypes.Customer.CustomerOpinions.Delete,
      ): Promise<MyResponseType> {
        return request('admin/customer/customer_opinions/delete', { data });
      },
    },
  },

  GoodsReleases: {
    GoodsReleases: {
      List(
        data?: ApiTypes.GoodsReleases.GoodsReleases.List,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/list', { data });
      },
      Store(
        data: ApiTypes.GoodsReleases.GoodsReleases.Store,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/store', { data });
      },
      Update(
        data: ApiTypes.GoodsReleases.GoodsReleases.Update,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/update', { data });
      },
      Show(
        data: ApiTypes.GoodsReleases.GoodsReleases.Show,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/show', { data });
      },
      SoftDelete(
        data: ApiTypes.GoodsReleases.GoodsReleases.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.GoodsReleases.GoodsReleases.Restore,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/restore', { data });
      },
      Delete(
        data: ApiTypes.GoodsReleases.GoodsReleases.Delete,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/delete', { data });
      },
      ApproveByEmployee(
        data: ApiTypes.GoodsReleases.GoodsReleases.ApproveByEmployee,
      ): Promise<MyResponseType> {
        return request(
          'admin/goods_releases/goods_releases/approve_by_employee',
          { data },
        );
      },
      Release(
        data: ApiTypes.GoodsReleases.GoodsReleases.Release,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/release', { data });
      },
      ScanRelease(
        data: ApiTypes.GoodsReleases.GoodsReleases.ScanRelease,
      ): Promise<MyResponseType> {
        return request('admin/goods_releases/goods_releases/scan_release', {
          data,
        });
      },
    },
  },
  Grid: {
    Grids: {
      List(data?: ApiTypes.Grid.Grids.List): Promise<MyResponseType> {
        return request('admin/grid/grids/list', { data });
      },
      Store(data: ApiTypes.Grid.Grids.Store): Promise<MyResponseType> {
        return request('admin/grid/grids/store', { data });
      },
      Update(data: ApiTypes.Grid.Grids.Update): Promise<MyResponseType> {
        return request('admin/grid/grids/update', { data });
      },
      Show(data: ApiTypes.Grid.Grids.Show): Promise<MyResponseType> {
        return request('admin/grid/grids/show', { data });
      },
      Delete(data: ApiTypes.Grid.Grids.Delete): Promise<MyResponseType> {
        return request('admin/grid/grids/delete', { data });
      },
      AddManager(
        data: ApiTypes.Grid.Grids.AddManager,
      ): Promise<MyResponseType> {
        return request('admin/grid/grids/add_manager', { data });
      },
      GetGridMark(
        data: ApiTypes.Grid.Grids.GetGridMark,
      ): Promise<MyResponseType> {
        return request('admin/grid/grids/get_grid_mark', { data });
      },
    },
  },
  HouseCharage: {
    HouseChargeHasCarPorts: {
      List(
        data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.List,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_car_ports/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_car_ports/store', {
          data,
        });
      },
      GetChargeStandardCarPortIds(
        data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.GetChargeStandardCarPortIds,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_charage/house_charge_has_car_ports/get_charge_standard_car_port_ids',
          { data },
        );
      },
      Show(
        data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_car_ports/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Delete,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_charage/house_charge_has_car_ports/delete',
          { data },
        );
      },
    },
    HouseChargeHasHouses: {
      List(
        data: ApiTypes.HouseCharage.HouseChargeHasHouses.List,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_houses/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.HouseCharage.HouseChargeHasHouses.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_houses/store', {
          data,
        });
      },
      GetChargeStandardHouseIds(
        data: ApiTypes.HouseCharage.HouseChargeHasHouses.GetChargeStandardHouseIds,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_charage/house_charge_has_houses/get_charge_standard_house_ids',
          { data },
        );
      },
      Show(
        data: ApiTypes.HouseCharage.HouseChargeHasHouses.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_houses/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseCharage.HouseChargeHasHouses.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_has_houses/delete', {
          data,
        });
      },
    },
    HouseChargeStandards: {
      List(
        data?: ApiTypes.HouseCharage.HouseChargeStandards.List,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.HouseCharage.HouseChargeStandards.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.HouseCharage.HouseChargeStandards.Update,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseCharage.HouseChargeStandards.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/show', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.HouseCharage.HouseChargeStandards.SoftDelete,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_charage/house_charge_standards/soft_delete',
          { data },
        );
      },
      Restore(
        data: ApiTypes.HouseCharage.HouseChargeStandards.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseCharage.HouseChargeStandards.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/delete', {
          data,
        });
      },
      Select(
        data?: ApiTypes.HouseCharage.HouseChargeStandards.Select,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_standards/select', {
          data,
        });
      },
    },
    HouseChargeTaskDetails: {
      List(
        data?: ApiTypes.HouseCharage.HouseChargeTaskDetails.List,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_task_details/list', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseCharage.HouseChargeTaskDetails.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_task_details/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseCharage.HouseChargeTaskDetails.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_task_details/delete', {
          data,
        });
      },
      CreateHouseBill(
        data: ApiTypes.HouseCharage.HouseChargeTaskDetails.CreateHouseBill,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_charage/house_charge_task_details/create_house_bill',
          { data },
        );
      },
    },
    HouseChargeTasks: {
      List(
        data?: ApiTypes.HouseCharage.HouseChargeTasks.List,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/list', { data });
      },
      Store(
        data: ApiTypes.HouseCharage.HouseChargeTasks.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/store', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseCharage.HouseChargeTasks.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/show', { data });
      },
      SoftDelete(
        data: ApiTypes.HouseCharage.HouseChargeTasks.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.HouseCharage.HouseChargeTasks.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseCharage.HouseChargeTasks.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/delete', {
          data,
        });
      },
      ExecuteTask(
        data: ApiTypes.HouseCharage.HouseChargeTasks.ExecuteTask,
      ): Promise<MyResponseType> {
        return request('admin/house_charage/house_charge_tasks/execute_task', {
          data,
        });
      },
    },
  },
  HouseOrder: {
    HouseOrderPayments: {
      List(
        data?: ApiTypes.HouseOrder.HouseOrderPayments.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_payments/list', { data });
      },
      Show(
        data: ApiTypes.HouseOrder.HouseOrderPayments.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_payments/show', { data });
      },
      Delete(
        data: ApiTypes.HouseOrder.HouseOrderPayments.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_payments/delete', {
          data,
        });
      },
    },
    HouseOrderRefunds: {
      List(
        data?: ApiTypes.HouseOrder.HouseOrderRefunds.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/list', { data });
      },
      Store(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/store', { data });
      },
      Update(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Update,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/show', { data });
      },
      Audit(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Audit,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/audit', { data });
      },
      SoftDelete(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseOrder.HouseOrderRefunds.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_order_refunds/delete', {
          data,
        });
      },
    },
    HouseOrders: {
      List(
        data?: ApiTypes.HouseOrder.HouseOrders.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/list', { data });
      },
      Store(
        data: ApiTypes.HouseOrder.HouseOrders.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/store', { data });
      },
      Update(
        data: ApiTypes.HouseOrder.HouseOrders.Update,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/update', { data });
      },
      Audit(
        data: ApiTypes.HouseOrder.HouseOrders.Audit,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/audit', { data });
      },
      Show(
        data: ApiTypes.HouseOrder.HouseOrders.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/show', { data });
      },
      SoftDelete(
        data: ApiTypes.HouseOrder.HouseOrders.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.HouseOrder.HouseOrders.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/restore', { data });
      },
      Delete(
        data: ApiTypes.HouseOrder.HouseOrders.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/delete', { data });
      },
      Export(
        data: ApiTypes.HouseOrder.HouseOrders.Export,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/export', {
          responseType: 'blob',
          data,
        });
      },
      UpdateSerialNumber(
        data: ApiTypes.HouseOrder.HouseOrders.UpdateSerialNumber,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/update_serial_number', {
          data,
        });
      },
      BatchUpdateSerialNumber(
        data: ApiTypes.HouseOrder.HouseOrders.BatchUpdateSerialNumber,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_order/house_orders/batch_update_serial_number',
          { data },
        );
      },
      ImportSerialNumber(
        data: ApiTypes.HouseOrder.HouseOrders.ImportSerialNumber,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/import_serial_number', {
          data,
        });
      },
      DownloadSerialNumberTemplate(): Promise<MyResponseType> {
        return request(
          'admin/house_order/house_orders/download_serial_number_template',
          { responseType: 'blob' },
        );
      },
      GetPayCode(
        data: ApiTypes.HouseOrder.HouseOrders.GetPayCode,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_orders/get_pay_code', { data });
      },
    },
    HousePrepaymentLogs: {
      List(
        data?: ApiTypes.HouseOrder.HousePrepaymentLogs.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/list', {
          data,
        });
      },
      Deduct(
        data: ApiTypes.HouseOrder.HousePrepaymentLogs.Deduct,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/deduct', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseOrder.HousePrepaymentLogs.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/show', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.HouseOrder.HousePrepaymentLogs.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.HouseOrder.HousePrepaymentLogs.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseOrder.HousePrepaymentLogs.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_logs/delete', {
          data,
        });
      },
    },
    HousePrepaymentPayments: {
      List(
        data?: ApiTypes.HouseOrder.HousePrepaymentPayments.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_payments/list', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseOrder.HousePrepaymentPayments.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_payments/show', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseOrder.HousePrepaymentPayments.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_payments/delete', {
          data,
        });
      },
    },
    HousePrepaymentRefunds: {
      List(
        data?: ApiTypes.HouseOrder.HousePrepaymentRefunds.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Store,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Update,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/show', {
          data,
        });
      },
      Audit(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Audit,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/audit', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.SoftDelete,
      ): Promise<MyResponseType> {
        return request(
          'admin/house_order/house_prepayment_refunds/soft_delete',
          { data },
        );
      },
      Restore(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayment_refunds/delete', {
          data,
        });
      },
    },
    HousePrepayments: {
      List(
        data?: ApiTypes.HouseOrder.HousePrepayments.List,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayments/list', { data });
      },
      Show(
        data: ApiTypes.HouseOrder.HousePrepayments.Show,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayments/show', { data });
      },
      SoftDelete(
        data: ApiTypes.HouseOrder.HousePrepayments.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayments/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.HouseOrder.HousePrepayments.Restore,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayments/restore', { data });
      },
      Delete(
        data: ApiTypes.HouseOrder.HousePrepayments.Delete,
      ): Promise<MyResponseType> {
        return request('admin/house_order/house_prepayments/delete', { data });
      },
    },
  },
  Meter: {
    HouseMeterHasHouses: {
      List(
        data?: ApiTypes.Meter.HouseMeterHasHouses.List,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/list', { data });
      },
      StoreOrUpdate(
        data: ApiTypes.Meter.HouseMeterHasHouses.StoreOrUpdate,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/store_or_update', {
          data,
        });
      },
      Show(
        data: ApiTypes.Meter.HouseMeterHasHouses.Show,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/show', { data });
      },
      Delete(
        data: ApiTypes.Meter.HouseMeterHasHouses.Delete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/delete', { data });
      },
      Import(
        data?: ApiTypes.Meter.HouseMeterHasHouses.Import,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/meter/house_meter_has_houses/download_template', {
          responseType: 'blob',
        });
      },
    },
    HouseMeterReadings: {
      List(
        data: ApiTypes.Meter.HouseMeterReadings.List,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/list', { data });
      },
      Store(
        data: ApiTypes.Meter.HouseMeterReadings.Store,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/store', { data });
      },
      Update(
        data: ApiTypes.Meter.HouseMeterReadings.Update,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/update', { data });
      },
      Show(
        data: ApiTypes.Meter.HouseMeterReadings.Show,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/show', { data });
      },
      Delete(
        data: ApiTypes.Meter.HouseMeterReadings.Delete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/delete', { data });
      },
      Import(
        data: ApiTypes.Meter.HouseMeterReadings.Import,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/meter/house_meter_readings/download_template', {
          responseType: 'blob',
        });
      },
    },
    HouseMeterTaskDetails: {
      List(
        data?: ApiTypes.Meter.HouseMeterTaskDetails.List,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_task_details/list', { data });
      },
      Show(
        data: ApiTypes.Meter.HouseMeterTaskDetails.Show,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_task_details/show', { data });
      },
      Delete(
        data: ApiTypes.Meter.HouseMeterTaskDetails.Delete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_task_details/delete', { data });
      },
      CreateMeterBill(
        data: ApiTypes.Meter.HouseMeterTaskDetails.CreateMeterBill,
      ): Promise<MyResponseType> {
        return request(
          'admin/meter/house_meter_task_details/create_meter_bill',
          { data },
        );
      },
    },
    HouseMeterTasks: {
      List(
        data?: ApiTypes.Meter.HouseMeterTasks.List,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/list', { data });
      },
      Store(
        data: ApiTypes.Meter.HouseMeterTasks.Store,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/store', { data });
      },
      Show(data: ApiTypes.Meter.HouseMeterTasks.Show): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Meter.HouseMeterTasks.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Meter.HouseMeterTasks.Restore,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/restore', { data });
      },
      Delete(
        data: ApiTypes.Meter.HouseMeterTasks.Delete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/delete', { data });
      },
      ExecuteMeterTasks(
        data: ApiTypes.Meter.HouseMeterTasks.ExecuteMeterTasks,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meter_tasks/execute_meter_tasks', {
          data,
        });
      },
    },
    HouseMeters: {
      List(data?: ApiTypes.Meter.HouseMeters.List): Promise<MyResponseType> {
        return request('admin/meter/house_meters/list', { data });
      },
      Store(data: ApiTypes.Meter.HouseMeters.Store): Promise<MyResponseType> {
        return request('admin/meter/house_meters/store', { data });
      },
      Update(data: ApiTypes.Meter.HouseMeters.Update): Promise<MyResponseType> {
        return request('admin/meter/house_meters/update', { data });
      },
      Show(data: ApiTypes.Meter.HouseMeters.Show): Promise<MyResponseType> {
        return request('admin/meter/house_meters/show', { data });
      },
      SoftDelete(
        data: ApiTypes.Meter.HouseMeters.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meters/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Meter.HouseMeters.Restore,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meters/restore', { data });
      },
      Delete(data: ApiTypes.Meter.HouseMeters.Delete): Promise<MyResponseType> {
        return request('admin/meter/house_meters/delete', { data });
      },
      Import(
        data?: ApiTypes.Meter.HouseMeters.Import,
      ): Promise<MyResponseType> {
        return request('admin/meter/house_meters/import', { data });
      },
      DownloadTemplate(): Promise<MyResponseType> {
        return request('admin/meter/house_meters/download_template', {
          responseType: 'blob',
        });
      },
    },
  },
  Msg: {
    MsgPropertyAnnouncements: {
      List(
        data?: ApiTypes.Msg.MsgPropertyAnnouncements.List,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/list', { data });
      },
      Store(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.Store,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/store', { data });
      },
      Update(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.Update,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/update', { data });
      },
      Show(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.Show,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/show', { data });
      },
      IsPublish(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.IsPublish,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/is_publish', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.Restore,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.Msg.MsgPropertyAnnouncements.Delete,
      ): Promise<MyResponseType> {
        return request('admin/msg/msg_property_announcements/delete', { data });
      },
    },
  },
  Permission: {
    SysPermissions: {
      List(
        data: ApiTypes.Permission.SysPermissions.List,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/list', { data });
      },
      Tree(
        data: ApiTypes.Permission.SysPermissions.Tree,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/tree', { data });
      },
      Store(
        data: ApiTypes.Permission.SysPermissions.Store,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/store', { data });
      },
      Update(
        data: ApiTypes.Permission.SysPermissions.Update,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/update', { data });
      },
      Delete(
        data: ApiTypes.Permission.SysPermissions.Delete,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/delete', { data });
      },
      Move(
        data: ApiTypes.Permission.SysPermissions.Move,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/move', { data });
      },
      SelectApi(): Promise<MyResponseType> {
        return request('admin/permission/sys_permissions/select_api', {});
      },
    },
    SysRoles: {
      List(data?: ApiTypes.Permission.SysRoles.List): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/list', { data });
      },
      Store(data: ApiTypes.Permission.SysRoles.Store): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/store', { data });
      },
      Update(
        data: ApiTypes.Permission.SysRoles.Update,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/update', { data });
      },
      Delete(
        data: ApiTypes.Permission.SysRoles.Delete,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/delete', { data });
      },
      Select(): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/select', {});
      },
      GetPermissions(
        data: ApiTypes.Permission.SysRoles.GetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/get_permissions', { data });
      },
      SetPermissions(
        data: ApiTypes.Permission.SysRoles.SetPermissions,
      ): Promise<MyResponseType> {
        return request('admin/permission/sys_roles/set_permissions', { data });
      },
    },
  },
  Refund: {
    Refunds: {
      List(data?: ApiTypes.Refund.Refunds.List): Promise<MyResponseType> {
        return request('admin/refund/refunds/list', { data });
      },
      Store(data: ApiTypes.Refund.Refunds.Store): Promise<MyResponseType> {
        return request('admin/refund/refunds/store', { data });
      },
      Show(data: ApiTypes.Refund.Refunds.Show): Promise<MyResponseType> {
        return request('admin/refund/refunds/show', { data });
      },
      Complete(
        data: ApiTypes.Refund.Refunds.Complete,
      ): Promise<MyResponseType> {
        return request('admin/refund/refunds/complete', { data });
      },
      Cancel(data: ApiTypes.Refund.Refunds.Cancel): Promise<MyResponseType> {
        return request('admin/refund/refunds/cancel', { data });
      },
      SoftDelete(
        data: ApiTypes.Refund.Refunds.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/refund/refunds/soft_delete', { data });
      },
      Restore(data: ApiTypes.Refund.Refunds.Restore): Promise<MyResponseType> {
        return request('admin/refund/refunds/restore', { data });
      },
      Delete(data: ApiTypes.Refund.Refunds.Delete): Promise<MyResponseType> {
        return request('admin/refund/refunds/delete', { data });
      },
    },
  },
  Visitor: {
    VisitorApplies: {
      List(
        data?: ApiTypes.Visitor.VisitorApplies.List,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/list', { data });
      },
      Show(
        data: ApiTypes.Visitor.VisitorApplies.Show,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/show', { data });
      },
      Approve(
        data: ApiTypes.Visitor.VisitorApplies.Approve,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/approve', { data });
      },
      Reject(
        data: ApiTypes.Visitor.VisitorApplies.Reject,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/reject', { data });
      },
      Scan(
        data: ApiTypes.Visitor.VisitorApplies.Scan,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/scan', { data });
      },
      SoftDelete(
        data: ApiTypes.Visitor.VisitorApplies.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/soft_delete', { data });
      },
      Restore(
        data: ApiTypes.Visitor.VisitorApplies.Restore,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/restore', { data });
      },
      Delete(
        data: ApiTypes.Visitor.VisitorApplies.Delete,
      ): Promise<MyResponseType> {
        return request('admin/visitor/visitor_applies/delete', { data });
      },
    },
  },
  WorkOrder: {
    HouseWorkLogs: {
      List(
        data: ApiTypes.WorkOrder.HouseWorkLogs.List,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_logs/list', { data });
      },
      Store(
        data: ApiTypes.WorkOrder.HouseWorkLogs.Store,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_logs/store', { data });
      },
      Show(
        data: ApiTypes.WorkOrder.HouseWorkLogs.Show,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_logs/show', { data });
      },
      Delete(
        data: ApiTypes.WorkOrder.HouseWorkLogs.Delete,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_logs/delete', { data });
      },
    },
    HouseWorkOrderPayments: {
      List(
        data?: ApiTypes.WorkOrder.HouseWorkOrderPayments.List,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/list', {
          data,
        });
      },
      Store(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Store,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/store', {
          data,
        });
      },
      Update(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Update,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/update', {
          data,
        });
      },
      Show(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Show,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/show', {
          data,
        });
      },
      SoftDelete(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.SoftDelete,
      ): Promise<MyResponseType> {
        return request(
          'admin/work_order/house_work_order_payments/soft_delete',
          { data },
        );
      },
      Restore(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Restore,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/restore', {
          data,
        });
      },
      Delete(
        data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Delete,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_order_payments/delete', {
          data,
        });
      },
    },
    HouseWorkOrders: {
      List(
        data?: ApiTypes.WorkOrder.HouseWorkOrders.List,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/list', { data });
      },
      Store(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Store,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/store', { data });
      },
      Update(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Update,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/update', { data });
      },
      Show(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Show,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/show', { data });
      },
      Assign(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Assign,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/assign', { data });
      },
      Visited(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Visited,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/visited', { data });
      },
      Closed(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Closed,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/closed', { data });
      },
      SoftDelete(
        data: ApiTypes.WorkOrder.HouseWorkOrders.SoftDelete,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/soft_delete', {
          data,
        });
      },
      Restore(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Restore,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/restore', { data });
      },
      Delete(
        data: ApiTypes.WorkOrder.HouseWorkOrders.Delete,
      ): Promise<MyResponseType> {
        return request('admin/work_order/house_work_orders/delete', { data });
      },
    },
  },
};
