Skip to content
0

katanakit-js / IAccessStrategy

Interface: IAccessStrategy ​

Defined in: src/core/services/access.service.ts:20

Estrategia de verificación de acceso - Strategy Pattern.

Define el contrato que toda implementación de control de acceso debe cumplir. El AccessService delega en una estrategia concreta, permitiendo intercambiar el algoritmo de autorización sin tocar al cliente.

Methods ​

useCan() ​

ts
useCan(subject, capability): boolean;

Defined in: src/core/services/access.service.ts:32

Whether the subject may perform a capability.

Parameters ​

ParameterType
subject{ [key: string]: unknown; id: string | number; roles: string[]; }
subject.idstring | number
subject.rolesstring[]
capabilitystring

Returns ​

boolean


useCapabilitiesFor() ​

ts
useCapabilitiesFor(role): string[];

Defined in: src/core/services/access.service.ts:22

Effective capabilities of a role (own plus inherited).

Parameters ​

ParameterType
rolestring

Returns ​

string[]


useHasRole() ​

ts
useHasRole(subject, role): boolean;

Defined in: src/core/services/access.service.ts:30

Exact role membership - no hierarchy involved.

Parameters ​

ParameterType
subject{ [key: string]: unknown; id: string | number; roles: string[]; }
subject.idstring | number
subject.rolesstring[]
rolestring

Returns ​

boolean


useRegisterRole() ​

ts
useRegisterRole(definition): void;

Defined in: src/core/services/access.service.ts:24

Registers (or replaces) a role definition.

Parameters ​

ParameterType
definition{ capabilities: string[]; label: string; rank: number; slug: string; }
definition.capabilitiesstring[]
definition.labelstring
definition.ranknumber
definition.slugstring

Returns ​

void


useResetRoles() ​

ts
useResetRoles(): void;

Defined in: src/core/services/access.service.ts:26

Restores the built-in role registry.

Returns ​

void


useRoles() ​

ts
useRoles(): {
  capabilities: string[];
  label: string;
  rank: number;
  slug: string;
}[];

Defined in: src/core/services/access.service.ts:28

Lists every registered role definition.

Returns ​

{ capabilities: string[]; label: string; rank: number; slug: string; }[]

Released under the MIT License.