import { ArchbaseRemoteApiClient } from '@archbase/data'; import { ArchbaseSecurityEventPage, ArchbaseSecurityEventType, ArchbaseAccessDecision, ArchbaseAccessOverview, ArchbaseOverviewItemPage, ArchbaseOverviewMetric, ArchbaseGroupReport, ArchbaseReachEntry, ArchbaseTreeBranch, ArchbaseTreeNodePage, ArchbaseEffectiveAccessReport, ArchbaseSimulationRequest } from './SecurityDiagnosticsDomain'; /** * Leitura do diagnóstico de acesso — `/api/v1/security/diagnostics/*`. * *
Por que não estende `ArchbaseRemoteApiService`. A classe base modela um CRUD de * entidade: exige `getId`, `isNewRecord` e `transform`. Aqui não há entidade — há três * perguntas (o retrato do tenant, o que uma pessoa pode, e se ela pode uma coisa). Implementar * aqueles métodos com retorno inventado só para herdar seria mentir sobre o que este serviço é. * O que importava da base — o cliente HTTP injetado e os cabeçalhos de tenant — está preservado. * *
Todos os endpoints são somente leitura e exigem, no servidor,
* `archbase.security.diagnostics.enabled=true` e usuário administrador.
*/
export declare class ArchbaseSecurityDiagnosticsService {
protected client: ArchbaseRemoteApiClient;
constructor(client: ArchbaseRemoteApiClient);
protected configureHeaders(): Record A resposta traz a cadeia dos portões avaliados — é ela, e não o booleano, que diz o
* que precisa mudar para o acesso passar a existir.
*/
simulate(request: ArchbaseSimulationRequest): Promise Sem período informado o servidor assume os últimos trinta dias — a primeira consulta de
* quem abre a tela não deve varrer a tabela inteira.
*
* Devolve 403 para quem não é administrador, e 404 quando a trilha está desligada: os dois
* casos precisam ser distinguidos na tela, porque significam coisas diferentes.
*/
getAuditEvents(options?: {
usuario?: string;
tipo?: ArchbaseSecurityEventType;
inicio?: string;
fim?: string;
page?: number;
size?: number;
}): Promise