import type { Permission as PermissionType } from './permissions'; import { PermissionEnum } from './utils'; export declare class Permission { private readonly permission; private readonly id; private allPermissions; constructor(id: string); private checkForValidity; getPermissionConfigs(): PermissionType; getParent(): Permission | null; getChildren(): Array; static getPermissionTree(type: PermissionEnum): PermissionType[]; static getAllPermission(): PermissionType[]; static getAllProjectPermission(): PermissionType[]; static getAllChildrenPermission(): PermissionType[]; static getAllProjectChildrenPermission(): PermissionType[]; static getAllChildrenPermissionByType(type: PermissionEnum): PermissionType[]; static getAllChildrenPermissionByPermissionId(): (id: String) => string[]; } export declare const PermissionIdS: { ManageProducts: string; UseAreaMap: string; UsePlanningMap: string; AddProduct: string; AddProductGroup: string; ImportProducts: string; ExportProducts: string; ExportProductsInProject: string; DeleteProduct: string; DeleteProductGroup: string; RestoreProduct: string; EditProduct: string; ViewProductList: string; ViewProductGroup: string; ViewAwaitApprovingProductList: string; ViewDeletedProductList: string; ViewHiddenProductList: string; ViewPublishedProductList: string; ViewProductDetail: string; ViewProductAttachments: string; ViewProductLegalAttachments: string; AddProductLegalAttachments: string; DeleteProductLegalAttachments: string; ViewOwnerPhoneNumber: string; ProductNote: string; AddProductNote: string; ViewProductNote: string; DeleteProductNote: string; ViewRelatedProducts: string; ViewProductHistory: string; ViewProductEditHistory: string; AddProductAttachments: string; DeleteProductAttachments: string; ChangeProductState: string; PostProductGroup: string; PostProduct: string; PostAuthorizedProduct: string; PostPremiumProduct: string; VerifyProduct: string; ApproveRejectProduct: string; ManageFinance: string; CreateDeposit: string; TransferMoney: string; ViewTransactionHistory: string; ManageDemandsAndCustomers: string; CrudDemandsAndCustomers: string; PublishDemand: string; ManageEmployee: string; ViewAllEmployeeGroup: string; ViewEmployeeGroup: string; ViewEmployeeList: string; ViewMyEmployeeGroup: string; ViewMyEmployeeList: string; ViewDeletedEmployeeList: string; ViewNeedToApproveEmployeeList: string; EditEmployeePermission: string; EditMyEmployeePermission: string; AddEmployeeGroup: string; AddEmployee: string; ViewEmployeeDetail: string; ViewMyEmployeeDetail: string; ViewEmployeePermissions: string; ViewMyEmployeePermissions: string; ViewEmployeeIdAndIdImage: string; ViewMyEmployeeIdAndIdImage: string; ViewEmployeePhone: string; ViewMyEmployeePhone: string; ViewEmployeeHistoryGroup: string; ViewEmployeeActionHistory: string; ViewEmployeeEditProfileHistory: string; ViewMyEmployeeActionHistory: string; ViewEditPermissionHistory: string; ViewMyEditPermissionHistory: string; ViewMyEmployeeEditProfileHistory: string; ViewEmployeeAttachmentsGroup: string; ViewEmployeeAttachments: string; ViewMyEmployeeAttachments: string; AddEmployeeAttachments: string; AddMyEmployeeAttachments: string; DeleteEmployeeAttachments: string; EditAllEmployeeGroup: string; EditMyEmployeeGroup: string; EditEmployeeGroup: string; EditEmployeeInfo: string; EditMyEmployeeInfo: string; EditEmployeeLoginInfo: string; EditMyEmployeeLoginInfo: string; DeleteEmployee: string; DeleteRestoreEmployee: string; RestoreEmployee: string; DeleteMyEmployee: string; DeleteEmployeeGroup: string; DeleteAllEmployeeGroup: string; DeleteMyEmployeeGroup: string; LockUnlockEmployee: string; ApproveEmployee: string; LockUnlockMyEmployee: string; ViewDepartmentChart: string; ManageDepartment: string; ViewDepartment: string; AddDepartment: string; EditDepartment: string; DeleteDepartment: string; ManageRole: string; ViewRole: string; AddRole: string; EditRole: string; DeleteRole: string; ManageProject: string; AddProject: string; AddProjectGroup: string; DuplicateProject: string; ApproveRejectProject: string; DeleteProject: string; RestoreProject: string; DeleteRestoreProject: string; EditProject: string; ViewProject: string; ViewProjectGroup: string; ManageViewProject: string; ViewSharedProject: string; ViewDeletedProject: string; ViewProjectListAndDetail: string; ViewProjectEditedHistory: string; ViewProjectActionHistory: string; ViewProjectHistory: string; ViewProjectAttachments: string; ViewProjectLegalAttachments: string; DeleteMyEmployeeAttachments: string; ViewEmployeeUsername: string; ViewMyEmployeeUsername: string; Note: string; ViewProjectNote: string; AddProjectNote: string; DeleteProjectNote: string; ChangeProjectStatus: string; PostProject: string; AddProjectAttachment: string; AddProjectLegalAttachment: string; DeleteProjectAttachment: string; DeleteProjectLegalAttachment: string; InvestorProject: string; ViewInvestorProject: string; ViewPublicProject: string; SendSaleRequest: string; ManageProductInProject: string; ChangeProductInProjectStatus: string; DuplicateProductInProject: string; AddProductInProject: string; ImportProductInProject: string; ImportProductInProjectWithApproval: string; ImportProductInProjectWithoutApproval: string; EditProductInProject: string; DeleteRestoreProductInProject: string; DeleteProductInProject: string; ApproveProductInProject: string; PostProductInProject: string; ApproveRejectProductInProject: string; ViewProductInProjectListAndDetail: string; ViewDeletedProductInProjectList: string; ViewNeedToApproveProductInProjectList: string; ViewProductInProjectHistory: string; ViewProductInProjectEditedHistory: string; ViewProductInProjectActionHistory: string; ViewProductInProjectAttachments: string; ViewProductInProjectLegalAttachments: string; ProductInProjectNote: string; AddProductInProjectNote: string; ViewProductInProjectNote: string; DeleteProductInProjectNote: string; AddProductInProjectAttachments: string; AddProductInProjectLegalAttachments: string; DeleteProductInProjectAttachments: string; DeleteProductInProjectLegalAttachments: string; RestoreProductInProject: string; ViewProductInProjectReservation: string; ViewProductInProjectReservationEditHistory: string; ViewProductInProjectReservationActionHistory: string; AddProductInProjectReservation: string; DeleteProductInProjectReservation: string; EditPendingProductInProjectReservation: string; EditProductInProjectReservation: string; VerifyProductInProjectReservation: string; RefundProductInProjectReservation: string; ApproveRejectProductInProjectReservation: string; ManageBooking: string; ManageDistributor: string; ViewDistributorGroup: string; ViewDistributorList: string; AddDistributor: string; AddDistributorGroup: string; AddDistributorHasAccount: string; AddDistributorNotHaveAccount: string; EditDistributor: string; ShareDistributorGroup: string; EditDistributorGroup: string; StopCooperatingDistributor: string; ApproveDistributor: string; LockOrUnlockDistributor: string; LockOrUnlockGroup: string; DeleteDistributor: string; DeleteDistributorGroup: string; ViewDistributedProject: string; EditSharedDraftProject: string; LockUnLockSharedProject: string; ShareMoreProject: string; DeleteSharedDraftProject: string; ShareDraftProject: string; CompleteSharedProject: string; ViewSaleRequestList: string; AcceptRejectSaleRequest: string; ViewDeletedDistributorList: string; RestoreDeletedDistributor: string; UnlockEmployee: string; B2CManagement: string; ViewB2CRealEstateList: string; ViewB2CRealEstateGroup: string; SaleAndRegionManagement: string; ViewB2CApprovedRealEstateList: string; ViewB2CRejectedRealEstateList: string; ApproveRejectRealEstate: string; ViewB2CCompanyList: string; ApproveRejectCompany: string; ListB2BCustomers: string; ViewListB2BCustomers: string; EditB2BCustomerInfo: string; ListRealEstateContracts: string; ViewListRealEstateContracts: string; EditRealEstateContract: string; CancelUpgradeRealEstateContract: string; AddRealEstateContractAttachments: string; ListProjectContracts: string; ViewListProjectContracts: string; EditProjectContract: string; CancelUpgradeProjectContract: string; AddProjectContractAttachments: string; ListRealEstatePermissions: string; ViewListRealEstatePermissions: string; EditRealEstatePermissions: string; ListProjectPermissions: string; ViewListProjectPermissions: string; EditProjectPermissions: string; ViewAdminEditHistory: string; LockUnlockB2BAccount: string; ManageProjectPermissionRole: string; AddProjectPermissionRole: string; EditProjectPermissionRole: string; LockUnlockProjectPermissionRole: string; ViewProjectPermissionRole: string; ViewProjectPermissionRoleEditHistory: string; ManageSaleEmployee: string; AddSaleEmployee: string; EditSaleEmployeePermission: string; EditSaleEmployee: string; DeleteSaleEmployee: string; ViewSaleEmployee: string; ManageRefund: string; AddRefund: string; EditRefund: string; ViewRefund: string; DeleteResoreRefund: string; ViewRefundHistory: string; ViewRefundActionHistory: string; ManageTransferBooking: string; TransferBooking: string; ViewBihaSharingProjectBooking: string; ApproveRejectBihaSharingProjectBooking: string; ViewAffiliateBooking: string; ManageSharingProject: string; ManageSharingProjectForBiha: string; ViewSharingProjectForBiha: string; ConsignProjectForBiha: string; ViewSharingProjectForBihaNote: string; EditConsignedProjectForBiha: string; ViewBihaConsignedProjectActionHistory: string; ViewBihaConsignedProjectEditHistory: string; LockUnlockConsignedProjectDistributor: string; ManageSharedProjectForAff: string; ViewAllSharedProjectByAff: string; AddSharedProjectForAff: string; EditSharedProjectForAff: string; ViewSharedProjectForAffEditHistory: string; LockUnlockSharedProjectDistributor: string; ViewOrganizationChart: string; AddEmployeeToDepartment: string; RemoveEmployeeOutOfDepartment: string; ManageCRM: string; ManageCustomer: string; ViewCustomerList: string; AddCustomer: string; AddCustomerFromExcel: string; ExportCustomer: string; ViewCustomerDetail: string; EditCustomer: string; ViewEditCustomerHistory: string; ViewInteractionCustomerHistory: string; RemoveCustomer: string; DeleteCustomer: string; RestoreCustomer: string; ViewCustomerNote: string; CreateCustomerNote: string; ManageDemand: string; ViewDemandList: string; AddDemand: string; ViewDemandDetail: string; EditDemand: string; ViewEditDemandHistory: string; ViewProductSuitDemand: string; RemoveDemand: string; DeleteDemand: string; RestoreDemand: string; AddForLeaseProject: string; ManageForLeaseProject: string; ManageForLeaseProductInProject: string; DeleteRestoreForLeaseProject: string; EditForLeaseProject: string; DuplicateForLeaseProject: string; ApproveRejectForLeaseProject: string; ChangeStatusForLeaseProject: string; ViewForLeaseProject: string; ViewForLeaseProjectEditedHistory: string; ViewForLeaseProjectActionHistory: string; AddForLeaseProjectAttachments: string; ViewForLeaseProjectAttachments: string; DeleteForLeaseProjectAttachments: string; ViewForLeaseProjectNote: string; ViewForLeaseProjectProducts: string; AddForLeaseProjectProduct: string; EditForLeaseProjectProduct: string; DeleteRestoreForLeaseProjectProduct: string; ChangeForLeaseProjectProductStatus: string; ApproveRejectForLeaseProjectProduct: string; ExportForLeaseProjectProduct: string; ViewForLeaseProjectProductEditedHistory: string; ViewForLeaseProjectProductActionHistory: string; ViewForLeaseProjectProductNote: string; ManagerInProject: string; ViewManager: string; AddManager: string; EditManager: string; DeleteManager: string; ViewManagerActionHistory: string; ViewManagerEditedHistory: string; ViewManagerNote: string; ManageRevenue: string; ViewRevenue: string; AddRevenue: string; EditRevenue: string; RemoveRestoreRevenue: string; ViewRevenueActionHistory: string; ViewRevenueEditedHistory: string; ViewRevenueNote: string; ManageApartmentResident: string; ViewApartmentResident: string; AddApartmentResident: string; EditApartmentResident: string; RemoveRestoreApartmentResident: string; ViewApartmentResidentActionHistory: string; ViewApartmentResidentEditedHistory: string; ViewApartmentResidentNote: string; ManageApartmentRepresentative: string; ViewApartmentRepresentative: string; AddApartmentRepresentative: string; EditApartmentRepresentative: string; RemoveApartmentRepresentative: string; ViewApartmentRepresentativeActionHistory: string; ViewApartmentRepresentativeEditedHistory: string; ViewApartmentRepresentativeNote: string; ManageResident: string; ViewResident: string; AddResident: string; EditResident: string; RemoveResident: string; ViewResidentActionHistory: string; ViewResidentEditedHistory: string; ViewResidentNote: string; ManageUtility: string; ManageServiceProject: string; ManageNotification: string; ManageCustomerLease: string; ManageInvoice: string; ManageSpend: string; }; export default Permission; export * from './validators'; export * from './ids';