export const PERMS = {
  project: {
    create: "project.create",
    keyChangeLogRead: "project.key-change-log.read",
    freeze: "project.freeze",
    unfreeze: "project.unfreeze",
    archive: "project.archive",
    bindUser: "project.bind.user",
    bindExecutorUser: "project.bind.executor_user",
  },
  meeting: {
    read: "meeting.read",
    manage: "meeting.manage",
    create: "meeting.create",
    delete: "meeting.delete",
    cancel: "meeting.cancel",
    submit: "meeting.submit",
    withdraw: "meeting.withdraw",
    materialSave: "meeting.material.save",
    materialSubmit: "meeting.material.submit",
    materialHistoryRead: "meeting.material.history.read",
    materialExport: "meeting.material.export",
    invoiceConfig: "meeting.invoice.config",
    changeLogRead: "meeting.change-log.read",
  },
  audit: {
    read: "audit.read",
    approve: "audit.approve",
    reject: "audit.reject",
    back: "audit.return",
    transfer: "audit.transfer",
    remind: "audit.remind",
    slaRead: "audit.sla.read",
    exportOpinions: "audit.export.opinions",
    materialRead: "audit.material.read",
    flowRead: "audit.flow.read",
    flowManage: "audit.flow.manage",
    logRead: "audit.log.read",
  },
  finance: {
    paymentConfirm: "finance.payment.confirm",
    ledgerExport: "finance.ledger.export",
    reconciliation: "finance.reconciliation",
    lock: "finance.lock",
    unlock: "finance.unlock",
  },
  user: {
    read: "user.read",
    create: "user.create",
    import: "user.import",
    update: "user.update",
    delete: "user.delete",
    roleAssign: "user.role.assign",
    enable: "user.enable",
    disable: "user.disable",
    resetPassword: "user.password.reset",
    roleHistoryRead: "user.role.history.read",
    delegationManage: "user.delegation.manage",
  },
  role: {
    read: "role.read",
    create: "role.create",
    update: "role.update",
    delete: "role.delete",
    enable: "role.enable",
    disable: "role.disable",
    permissionBind: "role.permission.bind",
  },
  permission: {
    read: "permission.read",
  },
  tenant: {
    manage: "tenant.manage",
    switch: "tenant.switch",
  },
  dataPermission: {
    read: "data.permission.read",
    manage: "data.permission.manage",
  },
  template: {
    read: "template.read",
    manage: "template.manage",
    create: "template.create",
    publish: "template.publish",
    disable: "template.disable",
    archive: "template.archive",
    rollback: "template.rollback",
    download: "template.download",
    downloadLogReadAll: "template.download.log.read.all",
    flowLink: "template.flow.link",
  },
  expert: {
    read: "expert.read",
    create: "expert.create",
    merge: "expert.merge",
    import: "expert.import",
    export: "expert.export",
    cardManage: "expert.card.manage",
    idCardOcr: "ocr.idcard",
    bankCardOcr: "ocr.bankcard",
  },
  notification: {
    policyRead: "notification.policy.read",
    policyManage: "notification.policy.manage",
    textTemplateRead: "notification.text-template.read",
    textTemplateManage: "notification.text-template.manage",
    dispatch: "notification.dispatch",
    taskRead: "notification.task.read",
    inAppRead: "notification.inapp.read",
    inAppMarkRead: "notification.inapp.mark-read",
  },
  observability: {
    read: "observability.read",
    manage: "observability.manage",
  },
  invoiceProfile: {
    read: "invoice.profile.read",
    manage: "invoice.profile.manage",
  },
  exportTask: {
    read: "export.task.read",
    manage: "export.task.manage",
  },
  dashboard: {
    read: "dashboard.read",
  },
  enterprise: {
    read: "enterprise.read",
    manage: "enterprise.manage",
    delete: "enterprise.delete",
  },
  dictionary: {
    read: "dictionary.read",
    manage: "dictionary.manage",
  },
  platform: {
    tenantManage: "platform.tenant.manage",
    userManage: "platform.user.manage",
    auditRead: "platform.audit.read",
    menuManage: "platform.menu.manage",
    roleRead: "platform.role.read",
    roleManage: "platform.role.manage",
    permissionRead: "platform.permission.read",
    expertRead: "platform.expert.read",
    expertManage: "platform.expert.manage",
    idCardOcr: "platform.ocr.idcard",
    bankCardOcr: "platform.ocr.bankcard",
    dictionaryRead: "platform.dictionary.read",
    dictionaryManage: "platform.dictionary.manage",
    sessionRead: "platform.session.read",
    sessionManage: "platform.session.manage",
    notifyGatewayRead: "platform.notify-gateway.read",
    notifyGatewayManage: "platform.notify-gateway.manage",
  },
} as const;
