termo_core 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -406,22 +406,6 @@ export function atualizar_pelo_id_setor(credencial_de_acesso, id, corpo_da_requi
406
406
  formato_da_resposta: "json",
407
407
  }, opcoes_da_chamada);
408
408
  }
409
- /**
410
- * Troca o segredo do app por um token de aplicativo
411
- *
412
- * Pública, sem token de usuário. O backend de um app manda o segredo gerado em `/master/apps` (cadastrado pelo master na tela de provedores do app e entregue ao `termo_core`) e recebe um JWT EdDSA de 15 minutos, assinado com a mesma chave do token de usuário (valide pelo `/.well-known/jwks.json`). Claims: `iss`, `aud`, `sub` (id do app), `iat`, `exp`, `tipo` = `aplicativo`, `name` (nome do app) e `isMaster` (falso quando o app aceita o perfil `cliente`). Vale só nas APIs de sistema dos outros apps, nunca no painel. Peça outro quando faltar menos de 60 s para `expira_em`.
413
- *
414
- * `POST /token_de_app`
415
- */
416
- export function criar_token_de_app(corpo_da_requisicao, opcoes_da_chamada) {
417
- return chamar_servico({
418
- servico: SERVICO_DESTA_API,
419
- metodo_http: "POST",
420
- caminho_da_rota: "/token_de_app",
421
- corpo_json: corpo_da_requisicao,
422
- formato_da_resposta: "json",
423
- }, opcoes_da_chamada);
424
- }
425
409
  /**
426
410
  * Lista usuários com paginação
427
411
  *
@@ -265,14 +265,6 @@ export interface SetorAutoComplete {
265
265
  export interface SetorCriar {
266
266
  nome: string;
267
267
  }
268
- export interface TokenDeAppCriar {
269
- segredo: string;
270
- }
271
- export interface TokenDeAppEmitido {
272
- app: string;
273
- expira_em: number;
274
- token: string;
275
- }
276
268
  export interface Usuario {
277
269
  atualizado_em: string;
278
270
  bloqueado_ate?: string | null;
@@ -1,29 +1,6 @@
1
1
  import type * as tipos from "./tipos.js";
2
2
  import type { CredencialDeAcesso } from "../base/credencial.js";
3
3
  import { type OpcoesDaChamada } from "../base/requisicao.js";
4
- /**
5
- * Parâmetros de consulta e de cabeçalho de `/auth`.
6
- */
7
- export interface ParametrosDeBuscarPaginadorAuth {
8
- cursor?: string;
9
- }
10
- /**
11
- * Parâmetros de consulta e de cabeçalho de `/auth/autocomplete`.
12
- */
13
- export interface ParametrosDeBuscarAutoCompleteAuth {
14
- busca?: string;
15
- perfil?: string;
16
- cursor?: string;
17
- tamanho?: number;
18
- }
19
- /**
20
- * Parâmetros de consulta e de cabeçalho de `/auth/filtro`.
21
- */
22
- export interface ParametrosDeBuscarPeloFiltroAuth {
23
- email?: string;
24
- perfil?: string;
25
- ativo?: boolean;
26
- }
27
4
  /**
28
5
  * Parâmetros de consulta e de cabeçalho de `/cliente`.
29
6
  */
@@ -49,45 +26,6 @@ export interface ParametrosDeBuscarPeloFiltroCliente {
49
26
  uf?: string;
50
27
  vendedor?: string;
51
28
  }
52
- /**
53
- * Parâmetros de consulta e de cabeçalho de `/colaborador`.
54
- */
55
- export interface ParametrosDeBuscarPaginadorColaborador {
56
- cursor?: string;
57
- nome?: string;
58
- setor?: string;
59
- cargo?: string;
60
- ativo?: boolean;
61
- }
62
- /**
63
- * Parâmetros de consulta e de cabeçalho de `/colaborador/autocomplete`.
64
- */
65
- export interface ParametrosDeBuscarAutoCompleteColaborador {
66
- busca?: string;
67
- cursor?: string;
68
- tamanho?: number;
69
- }
70
- /**
71
- * Parâmetros de consulta e de cabeçalho de `/colaborador/filtro`.
72
- */
73
- export interface ParametrosDeBuscarPeloFiltroColaborador {
74
- busca?: string;
75
- nome?: string;
76
- email?: string;
77
- setor?: string;
78
- cargo?: string;
79
- ativo?: boolean;
80
- perfil_acesso_id?: string;
81
- }
82
- /**
83
- * Parâmetros de consulta e de cabeçalho de `/colaborador/total`.
84
- */
85
- export interface ParametrosDeBuscarTotalColaborador {
86
- nome?: string;
87
- setor?: string;
88
- cargo?: string;
89
- ativo?: boolean;
90
- }
91
29
  /**
92
30
  * Parâmetros de consulta e de cabeçalho de `/fatura`.
93
31
  */
@@ -141,135 +79,6 @@ export interface ParametrosDeBuscarPeloFiltroFuncionario {
141
79
  unidade?: string;
142
80
  tipo_contrato?: string;
143
81
  }
144
- /**
145
- * Parâmetros de consulta e de cabeçalho de `/perfil_acesso`.
146
- */
147
- export interface ParametrosDeBuscarPaginadorPerfilAcesso {
148
- cursor?: string;
149
- }
150
- /**
151
- * Parâmetros de consulta e de cabeçalho de `/perfil_acesso/autocomplete`.
152
- */
153
- export interface ParametrosDeBuscarAutoCompletePerfilAcesso {
154
- busca?: string;
155
- cursor?: string;
156
- tamanho?: number;
157
- }
158
- /**
159
- * Parâmetros de consulta e de cabeçalho de `/perfil_acesso/filtro`.
160
- */
161
- export interface ParametrosDeBuscarPeloFiltroPerfilAcesso {
162
- nome?: string;
163
- }
164
- /**
165
- * Parâmetros de consulta e de cabeçalho de `/webhooks/termowebhook`.
166
- */
167
- export interface ParametrosDeReceberEventoTermoWebhookWebhooks {
168
- /**
169
- * Horário Unix em segundos usado na assinatura
170
- *
171
- * Enviado no cabeçalho `X-TermoWebhook-Data`.
172
- */
173
- "X-TermoWebhook-Data": number;
174
- /**
175
- * Identificador da chave do hub que assinou a entrega
176
- *
177
- * Enviado no cabeçalho `X-TermoWebhook-Chave`.
178
- */
179
- "X-TermoWebhook-Chave": string;
180
- /**
181
- * Id do aplicativo de destino no hub
182
- *
183
- * Enviado no cabeçalho `X-TermoWebhook-Destino`.
184
- */
185
- "X-TermoWebhook-Destino"?: string | null;
186
- /**
187
- * `ed25519=<base64url>` da assinatura de `<data>.<destino>.<corpo>` com a chave do hub
188
- *
189
- * Enviado no cabeçalho `X-TermoWebhook-Assinatura`.
190
- */
191
- "X-TermoWebhook-Assinatura": string;
192
- }
193
- /**
194
- * Versão do backend no ar
195
- *
196
- * Pública, sem token. Devolve `sucesso: true` e a versão do backend que está publicada, no formato semver.
197
- *
198
- * `GET /`
199
- */
200
- export declare function buscar_versao_test(opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.VersaoDoBackend>;
201
- /**
202
- * Lista os acessos com paginação por cursor
203
- *
204
- * Exige qualquer permissão da área `colaboradores`. Ordena por perfil, depois por e-mail e por id, sempre 50 itens por página. Sem `cursor` vem a primeira página de acessos; para a seguinte, envie em `cursor` o `proximo_cursor` recebido (nulo na última página). O total de registros não vem aqui: está em `GET /auth/total`, para a lista não esperar o `count(*)`. Cursor de id inexistente devolve página vazia. Acessos excluídos não aparecem.
205
- *
206
- * `GET /auth`
207
- */
208
- export declare function buscar_paginador_auth(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPaginadorAuth, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaAuthString>;
209
- /**
210
- * Cadastra um acesso
211
- *
212
- * Exige a permissão `criar` da área `colaboradores`. Cadastra quem pode entrar no TermoIntranetAPI: o e-mail é obrigatório, gravado em minúsculas e sem espaços nas pontas, com até 160 caracteres. O único perfil aceito é `colaborador`. O acesso nasce ativo e sem nenhuma permissão: as áreas vêm do perfil de acesso do colaborador (`PATCH /colaborador/{id}/perfil_acesso`). Para a pessoa conseguir entrar, o e-mail precisa ser `@termotubos.com.br` e existir no TermoAuth.
213
- *
214
- * `POST /auth`
215
- */
216
- export declare function criar_auth(credencial_de_acesso: CredencialDeAcesso, corpo_da_requisicao: tipos.AuthCriar, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Auth>;
217
- /**
218
- * Acesso de quem está logado
219
- *
220
- * Livre para qualquer usuário autenticado com cadastro ativo, mesmo sem nenhuma permissão liberada. Devolve o cadastro de quem chamou (o `nome` vem do token e, vazio, vira o e-mail), o nome do perfil de acesso do colaborador em `perfil_acesso` (nulo sem perfil) e as permissões por área que o perfil libera (`clientes`, `faturas`, `funcionarios` e `colaboradores`), cada uma com `ler`, `criar`, `editar` e `deletar`. Um master do TermoAuth recebe todas as permissões, com ou sem perfil, e, no primeiro acesso, ganha o cadastro automaticamente.
221
- *
222
- * `GET /auth/acesso`
223
- */
224
- export declare function buscar_acesso_auth(credencial_de_acesso: CredencialDeAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.AcessoAtual>;
225
- /**
226
- * Lista básica de acessos para seleção
227
- *
228
- * Exige qualquer permissão da área `colaboradores`. Devolve só id, e-mail e perfil, em ordem alfabética de e-mail, para escolher um acesso. `busca` procura por trecho do e-mail, sem diferenciar maiúsculas; `perfil` compara o valor exato. Paginação por cursor: `tamanho` tem padrão 10 e máximo 100, e para a página seguinte envie em `cursor` o `proximo_cursor` recebido.
229
- *
230
- * `GET /auth/autocomplete`
231
- */
232
- export declare function buscar_auto_complete_auth(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarAutoCompleteAuth, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaAuthAutoCompleteString>;
233
- /**
234
- * Busca acessos por filtro
235
- *
236
- * Exige qualquer permissão da área `colaboradores`. Devolve todos os acessos que casam com o filtro, sem paginação, em ordem alfabética de e-mail. `email` procura por trecho, sem diferenciar maiúsculas; `perfil` compara o valor exato; `ativo` filtra pela situação. Sem filtro, devolve todos. Acessos excluídos não aparecem.
237
- *
238
- * `GET /auth/filtro`
239
- */
240
- export declare function buscar_pelo_filtro_auth(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPeloFiltroAuth, opcoes_da_chamada?: OpcoesDaChamada): Promise<Array<tipos.Auth>>;
241
- /**
242
- * Total de registros do paginador
243
- *
244
- * Exige qualquer permissão da área `colaboradores`. Devolve só o `count(*)` com os mesmos filtros de `GET /auth`, para o frontend montar o paginador sem atrasar a lista: a tela pede a primeira página e o total em paralelo. Conta os mesmos acessos que a listagem devolve; excluídos não contam.
245
- *
246
- * `GET /auth/total`
247
- */
248
- export declare function buscar_total_auth(credencial_de_acesso: CredencialDeAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Total>;
249
- /**
250
- * Busca um acesso pelo id
251
- *
252
- * Exige qualquer permissão da área `colaboradores`. Acesso excluído responde `404`. `vinculado` diz se há um colaborador ligado ao acesso, e `nome` é o nome desse colaborador.
253
- *
254
- * `GET /auth/{id}`
255
- */
256
- export declare function buscar_pelo_id_auth(credencial_de_acesso: CredencialDeAcesso, id: string, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Auth>;
257
- /**
258
- * Atualiza um acesso
259
- *
260
- * Exige a permissão `editar` da área `colaboradores`. Só os campos enviados mudam: `email` (gravado em minúsculas, até 160 caracteres) e `ativo` (acesso inativo é barrado em todas as rotas). O acesso de um master do TermoAuth não pode ser alterado.
261
- *
262
- * `PATCH /auth/{id}`
263
- */
264
- export declare function atualizar_pelo_id_auth(credencial_de_acesso: CredencialDeAcesso, id: string, corpo_da_requisicao: tipos.AuthAtualizar, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Auth>;
265
- /**
266
- * Exclui um acesso
267
- *
268
- * Exige a permissão `deletar` da área `colaboradores`. A exclusão é lógica: o acesso some das consultas e a pessoa deixa de entrar, mas o registro fica guardado e não há como restaurar. Acesso com colaborador vinculado não pode ser excluído. O acesso de um master do TermoAuth não pode ser excluído.
269
- *
270
- * `DELETE /auth/{id}`
271
- */
272
- export declare function deletar_pelo_id_auth(credencial_de_acesso: CredencialDeAcesso, id: string, opcoes_da_chamada?: OpcoesDaChamada): Promise<void>;
273
82
  /**
274
83
  * Lista clientes com paginação por cursor
275
84
  *
@@ -310,70 +119,6 @@ export declare function buscar_total_cliente(credencial_de_acesso: CredencialDeA
310
119
  * `GET /cliente/{id}`
311
120
  */
312
121
  export declare function buscar_pelo_id_cliente(credencial_de_acesso: CredencialDeAcesso, id: number, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Cliente>;
313
- /**
314
- * Lista os colaboradores com paginação por cursor
315
- *
316
- * Exige qualquer permissão da área `colaboradores`. Ordena por nome e id, sempre 50 itens por página. `nome`, `setor` e `cargo` procuram por trecho, sem diferenciar maiúsculas, e `ativo` filtra pela situação (é o filtro da tela). Sem `cursor` vem a primeira página de colaboradores; para a seguinte, envie em `cursor` o `proximo_cursor` recebido (nulo na última página). O total de registros não vem aqui: está em `GET /colaborador/total`, para a lista não esperar o `count(*)`. Cursor de id inexistente devolve página vazia. Quando quem chama é master do TermoAuth, antes de listar o backend cadastra os colaboradores do TermoAuth que ainda não existem aqui, com o perfil de acesso "Acesso inicial" (só leitura). Colaboradores excluídos não aparecem.
317
- *
318
- * `GET /colaborador`
319
- */
320
- export declare function buscar_paginador_colaborador(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPaginadorColaborador, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaColaboradorString>;
321
- /**
322
- * Lista básica de colaboradores para seleção
323
- *
324
- * Exige qualquer permissão da área `colaboradores`. Devolve só id, nome e e-mail, em ordem alfabética de nome, para escolher um colaborador. `busca` procura por trecho do nome ou do e-mail, sem diferenciar maiúsculas. Paginação por cursor: `tamanho` tem padrão 10 e máximo 100, e para a página seguinte envie em `cursor` o `proximo_cursor` recebido.
325
- *
326
- * `GET /colaborador/autocomplete`
327
- */
328
- export declare function buscar_auto_complete_colaborador(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarAutoCompleteColaborador, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaColaboradorAutoCompleteString>;
329
- /**
330
- * Busca colaboradores por filtro
331
- *
332
- * Exige qualquer permissão da área `colaboradores`. Devolve todos os colaboradores que casam com o filtro, sem paginação, em ordem alfabética de nome. `busca` procura por trecho do nome ou do e-mail; `nome`, `email`, `setor` e `cargo` procuram por trecho, sem diferenciar maiúsculas; `ativo` filtra pela situação; `perfil_acesso_id` filtra pelo perfil de acesso. Sem filtro, devolve todos. Colaboradores excluídos não aparecem.
333
- *
334
- * `GET /colaborador/filtro`
335
- */
336
- export declare function buscar_pelo_filtro_colaborador(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPeloFiltroColaborador, opcoes_da_chamada?: OpcoesDaChamada): Promise<Array<tipos.Colaborador>>;
337
- /**
338
- * Total de registros do paginador
339
- *
340
- * Exige qualquer permissão da área `colaboradores`. Devolve só o `count(*)` com os mesmos filtros de `GET /colaborador` (`nome`, `setor`, `cargo` e `ativo`), para o frontend montar o paginador sem atrasar a lista: a tela pede a primeira página e o total em paralelo. Conta os mesmos colaboradores que a listagem devolve; excluídos não contam.
341
- *
342
- * `GET /colaborador/total`
343
- */
344
- export declare function buscar_total_colaborador(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarTotalColaborador, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Total>;
345
- /**
346
- * Busca um colaborador pelo id
347
- *
348
- * Exige qualquer permissão da área `colaboradores`. O colaborador é do TermoAuth, que é o único que cria, altera e exclui; aqui só se define o perfil de acesso dele. Colaborador excluído responde `404`. Traz junto o e-mail do acesso, se ele é master do TermoAuth, o setor, o cargo e a função vindos do TermoAuth e o perfil de acesso (`perfil_acesso_id` e o nome em `perfil_acesso`, nulos quando a pessoa ainda não tem perfil).
349
- *
350
- * `GET /colaborador/{id}`
351
- */
352
- export declare function buscar_pelo_id_colaborador(credencial_de_acesso: CredencialDeAcesso, id: string, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Colaborador>;
353
- /**
354
- * Define o perfil de acesso de um colaborador
355
- *
356
- * Exige a permissão `editar` da área `colaboradores`. É a única escrita do colaborador feita pelo TermoIntranetAPI: `perfil_acesso_id` aponta para um perfil de `GET /perfil_acesso/filtro` e passa a definir o que a pessoa enxerga; `null` tira o perfil e deixa a pessoa sem nenhuma área. O colaborador de um master do TermoAuth não aceita perfil (ele já tem tudo). Vale em até 5 minutos (cache do acesso).
357
- *
358
- * `PATCH /colaborador/{id}/perfil_acesso`
359
- */
360
- export declare function vincular_perfil_acesso_colaborador(credencial_de_acesso: CredencialDeAcesso, id: string, corpo_da_requisicao: tipos.ColaboradorVincularPerfilAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Colaborador>;
361
- /**
362
- * Configuração do app
363
- *
364
- * Só um master do TermoAuth. Devolve a situação do segredo do app gerado no TermoAuth (`/master/apps`), guardado cifrado no banco: `configurado` e o final mascarado em `final_visivel`, nunca o valor. `criptografia_configurada` diz se o servidor tem a `GLOBAL_SECRET_CRIPTOGRAFIA`; sem ela o segredo aparece como não configurado.
365
- *
366
- * `GET /configuracao`
367
- */
368
- export declare function buscar_pelo_id_configuracao(credencial_de_acesso: CredencialDeAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Configuracao>;
369
- /**
370
- * Atualiza o segredo do app
371
- *
372
- * Só um master do TermoAuth. `segredo_do_app_gerado_no_termo_auth` ausente não muda nada, uma string troca o valor (até 2.000 caracteres, sem quebra de linha) e `null` limpa. O valor é cifrado com AES-256-GCM e entregue ao `termo_core` na hora, sem deploy.
373
- *
374
- * `PATCH /configuracao`
375
- */
376
- export declare function atualizar_pelo_id_configuracao(credencial_de_acesso: CredencialDeAcesso, corpo_da_requisicao: tipos.ConfiguracaoAtualizar, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Configuracao>;
377
122
  /**
378
123
  * Lista faturas com paginação por cursor
379
124
  *
@@ -454,83 +199,3 @@ export declare function buscar_total_funcionario(credencial_de_acesso: Credencia
454
199
  * `GET /funcionario/{id}`
455
200
  */
456
201
  export declare function buscar_pelo_id_funcionario(credencial_de_acesso: CredencialDeAcesso, id: number, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Funcionario>;
457
- /**
458
- * Lista os perfis de acesso com paginação por cursor
459
- *
460
- * Exige qualquer permissão da área `colaboradores` (qualquer ação liberada na área já libera a leitura). Ordena pelo nome e pelo id, sempre 50 itens por página. Sem `cursor` vem a primeira página; para a seguinte, envie em `cursor` o `proximo_cursor` recebido (nulo na última página). O total de registros não vem aqui: está em `GET /perfil_acesso/total`, para a lista não esperar o `count(*)`. Cursor de id inexistente devolve página vazia. Perfis excluídos não aparecem.
461
- *
462
- * `GET /perfil_acesso`
463
- */
464
- export declare function buscar_paginador_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPaginadorPerfilAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaPerfilAcessoString>;
465
- /**
466
- * Cria um perfil de acesso
467
- *
468
- * Exige a permissão `criar` da área `colaboradores`. O perfil de acesso é o conjunto de permissões que o TermoIntranetAPI dá a um colaborador: cada colaborador aponta para um perfil (`PATCH /colaborador/{id}/perfil_acesso`) e enxerga o que o perfil libera. `nome` é obrigatório (até 80 caracteres, único sem diferenciar maiúsculas); `descricao` é opcional (até 200); `permissoes` traz, para cada área (`clientes`, `faturas`, `funcionarios`, `colaboradores`), as ações `ler`, `criar`, `editar` e `deletar` (o que não vier fica `false`). A resposta inclui `colaboradores`, quantas pessoas usam o perfil. O master do TermoAuth tem tudo liberado sem precisar de perfil.
469
- *
470
- * `POST /perfil_acesso`
471
- */
472
- export declare function criar_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, corpo_da_requisicao: tipos.PerfilAcessoCriar, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PerfilAcesso>;
473
- /**
474
- * Lista básica de perfis de acesso para seleção
475
- *
476
- * Exige qualquer permissão da área `colaboradores` (qualquer ação liberada na área já libera a leitura). Devolve só o id e o nome, em ordem alfabética. `busca` procura por trecho do nome, sem diferenciar maiúsculas. Paginação por cursor: `tamanho` tem padrão 10 e máximo 100, e para a página seguinte envie em `cursor` o `proximo_cursor` recebido.
477
- *
478
- * `GET /perfil_acesso/autocomplete`
479
- */
480
- export declare function buscar_auto_complete_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarAutoCompletePerfilAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PaginaPerfilAcessoAutoCompleteString>;
481
- /**
482
- * Busca perfis de acesso por filtro
483
- *
484
- * Exige qualquer permissão da área `colaboradores` (qualquer ação liberada na área já libera a leitura). Devolve todos os perfis que casam com o filtro, sem paginação, em ordem alfabética de nome. `nome` procura por trecho, sem diferenciar maiúsculas. Sem filtro, devolve todos (é o que a tela usa para listar e para escolher o perfil de um colaborador).
485
- *
486
- * `GET /perfil_acesso/filtro`
487
- */
488
- export declare function buscar_pelo_filtro_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, parametros?: ParametrosDeBuscarPeloFiltroPerfilAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<Array<tipos.PerfilAcesso>>;
489
- /**
490
- * Total de registros do paginador
491
- *
492
- * Exige qualquer permissão da área `colaboradores` (qualquer ação liberada na área já libera a leitura). Devolve só o `count(*)` com os mesmos filtros de `GET /perfil_acesso`, para o frontend montar o paginador sem atrasar a lista: a tela pede a primeira página e o total em paralelo. Perfis excluídos não contam.
493
- *
494
- * `GET /perfil_acesso/total`
495
- */
496
- export declare function buscar_total_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.Total>;
497
- /**
498
- * Busca um perfil de acesso pelo id
499
- *
500
- * Exige qualquer permissão da área `colaboradores` (qualquer ação liberada na área já libera a leitura). Perfil excluído responde `404`.
501
- *
502
- * `GET /perfil_acesso/{id}`
503
- */
504
- export declare function buscar_pelo_id_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, id: string, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PerfilAcesso>;
505
- /**
506
- * Atualiza um perfil de acesso pelo id
507
- *
508
- * Exige a permissão `editar` da área `colaboradores`. Atualização parcial: só os campos enviados mudam. `nome` segue o limite do cadastro; `descricao` vazia apaga o valor; `permissoes`, quando enviado, substitui o conjunto inteiro (o que não vier fica `false`). Todo colaborador do perfil passa a valer com as novas permissões em até 5 minutos (cache do acesso).
509
- *
510
- * `PATCH /perfil_acesso/{id}`
511
- */
512
- export declare function atualizar_pelo_id_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, id: string, corpo_da_requisicao: tipos.PerfilAcessoAtualizar, opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.PerfilAcesso>;
513
- /**
514
- * Exclui um perfil de acesso pelo id
515
- *
516
- * Exige a permissão `deletar` da área `colaboradores`. A exclusão é lógica e só é aceita quando nenhum colaborador usa o perfil: com gente vinculada responde `409`, e é preciso trocar o perfil dessas pessoas antes.
517
- *
518
- * `DELETE /perfil_acesso/{id}`
519
- */
520
- export declare function deletar_pelo_id_perfil_acesso(credencial_de_acesso: CredencialDeAcesso, id: string, opcoes_da_chamada?: OpcoesDaChamada): Promise<void>;
521
- /**
522
- * Verifica se o backend está no ar
523
- *
524
- * Pública, sem token. Responde `200` com `sucesso: true` e a versão do backend no ar sempre que o servidor está de pé; não consulta os bancos nem o TermoAuth.
525
- *
526
- * `GET /test`
527
- */
528
- export declare function verificar_saude_test(opcoes_da_chamada?: OpcoesDaChamada): Promise<tipos.SaudeDoBackend>;
529
- /**
530
- * Recebe os eventos entregues pelo TermoWebhook
531
- *
532
- * Pública, sem token do usuário: quem chama é o TermoWebhook, o hub de eventos da Termotubos, e a entrega é conferida pela assinatura Ed25519 do hub (chave pública do hub, data dentro da tolerância e id deste aplicativo como destino). Hoje são aplicados `colaborador.criado` e `colaborador.atualizado`, nas versões 1 e 2, que cadastram e atualizam o colaborador e o acesso a partir do TermoAuth; evento repetido ou mais antigo que o último aplicado é descartado sem erro, e tipo desconhecido responde `200` sem fazer nada. A resposta não tem corpo; qualquer status fora de `2xx` faz o hub reenviar.
533
- *
534
- * `POST /webhooks/termowebhook`
535
- */
536
- export declare function receber_evento_termo_webhook_webhooks(parametros: ParametrosDeReceberEventoTermoWebhookWebhooks, corpo_da_requisicao: tipos.EntregaDoEvento, opcoes_da_chamada?: OpcoesDaChamada): Promise<void>;