@anpdgovbr/shared-types
Version:
Biblioteca central de tipos TypeScript compartilhados para os projetos da ANPD (BETA)
42 lines • 1.53 kB
TypeScript
import type { AcaoPermissao, RecursoPermissao } from "../enums/permissao.enum";
/**
* Payload utilizado para criar ou atualizar permissões vinculadas a um perfil.
*
* @remarks
* Esta interface define a estrutura dos dados necessários para associar uma permissão
* específica a um perfil de usuário, incluindo a ação, o recurso e se a permissão é concedida.
*
* @property perfilId - Identificador único do perfil ao qual a permissão será vinculada.
* @property acao - Ação permitida ou negada, conforme definido no enum {@link AcaoPermissao}.
* @property recurso - Recurso ao qual a permissão se refere, conforme definido no enum {@link RecursoPermissao}.
* @property permitido - Indica se a permissão está concedida (`true`) ou negada (`false`).
*
* @example
* ```ts
* const payload: PermissaoPayload = {
* perfilId: 1,
* acao: "Criar",
* recurso: "Usuario",
* permitido: true,
* }
* ```
*/
export interface PermissaoPayload {
/**
* Identificador único do perfil ao qual a permissão será vinculada.
*/
perfilId: number;
/**
* Ação permitida ou negada, conforme definido no enum {@link AcaoPermissao}.
*/
acao: AcaoPermissao;
/**
* Recurso ao qual a permissão se refere, conforme definido no enum {@link RecursoPermissao}.
*/
recurso: RecursoPermissao;
/**
* Indica se a permissão está concedida (`true`) ou negada (`false`).
*/
permitido: boolean;
}
//# sourceMappingURL=permissao-payload.dto.d.ts.map