types-nora-api 0.0.468 → 0.0.472

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.
@@ -0,0 +1,363 @@
1
+ // AUTO-GENERATED FILE - DO NOT EDIT
2
+ // DTOs públicos
3
+ import { TIPOS_ARQUIVO } from '../dominio';
4
+ var ApiTransporte;
5
+ (function (ApiTransporte) {
6
+ ApiTransporte["GRAPHQL"] = "GRAPHQL";
7
+ ApiTransporte["REST"] = "REST";
8
+ })(ApiTransporte || (ApiTransporte = {}));
9
+ var ApiTipoRequisicao;
10
+ (function (ApiTipoRequisicao) {
11
+ ApiTipoRequisicao["GET"] = "GET";
12
+ ApiTipoRequisicao["POST"] = "POST";
13
+ ApiTipoRequisicao["PATCH"] = "PATCH";
14
+ ApiTipoRequisicao["DELETE"] = "DELETE";
15
+ })(ApiTipoRequisicao || (ApiTipoRequisicao = {}));
16
+ var ApiMetodoHttp;
17
+ (function (ApiMetodoHttp) {
18
+ ApiMetodoHttp["GET"] = "GET";
19
+ ApiMetodoHttp["POST"] = "POST";
20
+ ApiMetodoHttp["PATCH"] = "PATCH";
21
+ ApiMetodoHttp["DELETE"] = "DELETE";
22
+ })(ApiMetodoHttp || (ApiMetodoHttp = {}));
23
+ function createApiGraphqlGet(definicao) { return definicao; }
24
+ function createApiRestGet(definicao) { return definicao; }
25
+ var EventosApi;
26
+ (function (EventosApi) {
27
+ const Graphql = {
28
+ testeGraphql: createApiGraphqlGet({
29
+ transporte: ApiTransporte.GRAPHQL,
30
+ tipoRequisicao: ApiTipoRequisicao.GET,
31
+ metodoHttp: ApiMetodoHttp.POST,
32
+ nome: 'testeGraphql',
33
+ endpoint: '/graphql',
34
+ nomeOperacaoGraphql: 'TesteGraphql',
35
+ query: `
36
+ query TesteGraphql {
37
+ testeGraphql
38
+ }
39
+ `,
40
+ montaVariaveis: () => ({}),
41
+ }),
42
+ testeGraphqlSessao: createApiGraphqlGet({
43
+ transporte: ApiTransporte.GRAPHQL,
44
+ tipoRequisicao: ApiTipoRequisicao.GET,
45
+ metodoHttp: ApiMetodoHttp.POST,
46
+ nome: 'testeGraphqlSessao',
47
+ endpoint: '/graphql',
48
+ nomeOperacaoGraphql: 'TesteGraphqlSessao',
49
+ query: `
50
+ query TesteGraphqlSessao($idSessao: Int!) {
51
+ testeGraphqlSessao(idSessao: $idSessao) {
52
+ id
53
+ tituloSessao
54
+ }
55
+ }
56
+ `,
57
+ montaVariaveis: parametros => ({ idSessao: parametros.idSessao }),
58
+ }),
59
+ };
60
+ const Rest = {
61
+ testeRest: createApiRestGet({
62
+ transporte: ApiTransporte.REST,
63
+ tipoRequisicao: ApiTipoRequisicao.GET,
64
+ metodoHttp: ApiMetodoHttp.GET,
65
+ nome: 'testeRest',
66
+ endpoint: '/api/teste/rest',
67
+ montaQueryString: () => '',
68
+ }),
69
+ };
70
+ EventosApi.GET = { Graphql, Rest };
71
+ })(EventosApi || (EventosApi = {}));
72
+ const ARQUIVO_UPLOAD_DEFINICOES = {
73
+ [TIPOS_ARQUIVO.RECURSOS_INTERNOS.id]: {
74
+ tipoArquivoId: TIPOS_ARQUIVO.RECURSOS_INTERNOS.id,
75
+ camposExtras: [
76
+ { nome: 'nomeRecursoInterno', tipo: 'texto', obrigatorio: true },
77
+ ],
78
+ arquivos: [
79
+ { nome: 'arquivo', obrigatorio: true, multiplicidade: 'unico' },
80
+ ],
81
+ },
82
+ [TIPOS_ARQUIVO.AVATAR_PERSONAGEM.id]: {
83
+ tipoArquivoId: TIPOS_ARQUIVO.AVATAR_PERSONAGEM.id,
84
+ camposExtras: [
85
+ { nome: 'idChaveNovoAvatar', tipo: 'numero', obrigatorio: true },
86
+ ],
87
+ arquivos: [
88
+ { nome: 'arquivo', obrigatorio: true, multiplicidade: 'unico' },
89
+ ],
90
+ },
91
+ [TIPOS_ARQUIVO.IMAGEM_ESPECIAL_ARTISTA.id]: {
92
+ tipoArquivoId: TIPOS_ARQUIVO.IMAGEM_ESPECIAL_ARTISTA.id,
93
+ camposExtras: [],
94
+ arquivos: [
95
+ { nome: 'arquivo', obrigatorio: true, multiplicidade: 'unico' },
96
+ ],
97
+ },
98
+ [TIPOS_ARQUIVO.ITENS_EMBLEMAS.id]: {
99
+ tipoArquivoId: TIPOS_ARQUIVO.ITENS_EMBLEMAS.id,
100
+ camposExtras: [
101
+ { nome: 'nomeEmblema', tipo: 'texto', obrigatorio: true },
102
+ ],
103
+ arquivos: [
104
+ { nome: 'moldura', obrigatorio: true, multiplicidade: 'unico' },
105
+ { nome: 'insignia', obrigatorio: true, multiplicidade: 'unico' },
106
+ { nome: 'separador', obrigatorio: true, multiplicidade: 'unico' },
107
+ ],
108
+ },
109
+ };
110
+ function obtemDefinicaoUploadTipoArquivo(tipoArquivoId) {
111
+ return ARQUIVO_UPLOAD_DEFINICOES[tipoArquivoId] ?? null;
112
+ }
113
+ const criaCaminhoArquivoArte = (caminhoArquivo) => caminhoArquivo;
114
+ const criaCaminhoArquivoAvatar = (caminhoArquivo) => caminhoArquivo;
115
+ var RegistroPixProvedor;
116
+ (function (RegistroPixProvedor) {
117
+ RegistroPixProvedor["Efi"] = "EFI";
118
+ })(RegistroPixProvedor || (RegistroPixProvedor = {}));
119
+ // Outros Types //
120
+ var TipoSessao;
121
+ (function (TipoSessao) {
122
+ TipoSessao["AVENTURA"] = "AVENTURA";
123
+ TipoSessao["SESSAO_UNICA_CANONICA"] = "SESSAO_UNICA_CANONICA";
124
+ TipoSessao["SESSAO_UNICA_NAO_CANONICA"] = "SESSAO_UNICA_NAO_CANONICA";
125
+ })(TipoSessao || (TipoSessao = {}));
126
+ const TIPO_SESSAO_LABEL = {
127
+ AVENTURA: 'Aventura',
128
+ SESSAO_UNICA_CANONICA: 'Sessão Única Canônica',
129
+ SESSAO_UNICA_NAO_CANONICA: 'Sessão Única Não Canônica',
130
+ };
131
+ class AuthSession {
132
+ expiredAt;
133
+ id;
134
+ destroyedAt;
135
+ json;
136
+ constructor(expiredAt, id, json, destroyedAt) {
137
+ this.expiredAt = expiredAt;
138
+ this.id = id;
139
+ this.destroyedAt = destroyedAt;
140
+ this.json = json;
141
+ }
142
+ }
143
+ class TesteGraphqlSessaoDto {
144
+ id;
145
+ tituloSessao;
146
+ }
147
+ //
148
+ var ParticipanteSessao_Tipo;
149
+ (function (ParticipanteSessao_Tipo) {
150
+ ParticipanteSessao_Tipo["NARRADOR"] = "Narrador";
151
+ ParticipanteSessao_Tipo["JOGADOR"] = "Jogador";
152
+ })(ParticipanteSessao_Tipo || (ParticipanteSessao_Tipo = {}));
153
+ var TipoVinculoSessaoJogador;
154
+ (function (TipoVinculoSessaoJogador) {
155
+ TipoVinculoSessaoJogador["FICHA_TEMPORARIA_PENDENTE"] = "FICHA_TEMPORARIA_PENDENTE";
156
+ TipoVinculoSessaoJogador["PERSONAGEM"] = "PERSONAGEM";
157
+ TipoVinculoSessaoJogador["FICHA_TEMPORARIA"] = "FICHA_TEMPORARIA";
158
+ })(TipoVinculoSessaoJogador || (TipoVinculoSessaoJogador = {}));
159
+ var SalaDeJogo_Tipo;
160
+ (function (SalaDeJogo_Tipo) {
161
+ SalaDeJogo_Tipo["SALA__SOLO"] = "Sess\u00E3o Solo";
162
+ SalaDeJogo_Tipo["SALA__SESSAO_UNICA"] = "Sess\u00E3o \u00DAnica";
163
+ SalaDeJogo_Tipo["SALA__SESSAO_AVENTURA"] = "Sess\u00E3o Aventura";
164
+ })(SalaDeJogo_Tipo || (SalaDeJogo_Tipo = {}));
165
+ var SalaDeJogo_Estado;
166
+ (function (SalaDeJogo_Estado) {
167
+ SalaDeJogo_Estado["SALA__EM_ESPERA"] = "Em Espera";
168
+ SalaDeJogo_Estado["SALA__EM_ANDAMENTO"] = "Em Andamento";
169
+ })(SalaDeJogo_Estado || (SalaDeJogo_Estado = {}));
170
+ //
171
+ // #endregion
172
+ // #region Mestre da Sala
173
+ //
174
+ var SalaDeJogo_TipoMestre;
175
+ (function (SalaDeJogo_TipoMestre) {
176
+ SalaDeJogo_TipoMestre["SALA__MESTRADA"] = "SALA__MESTRADA";
177
+ SalaDeJogo_TipoMestre["SALA__INTELIGENTE"] = "SALA__INTELIGENTE";
178
+ })(SalaDeJogo_TipoMestre || (SalaDeJogo_TipoMestre = {}));
179
+ //
180
+ // #endregion
181
+ // #region Participante da Sala
182
+ //
183
+ var SalaDeJogo_TipoParticipante;
184
+ (function (SalaDeJogo_TipoParticipante) {
185
+ SalaDeJogo_TipoParticipante["NARRADOR"] = "Narrador";
186
+ SalaDeJogo_TipoParticipante["JOGADOR"] = "Jogador";
187
+ })(SalaDeJogo_TipoParticipante || (SalaDeJogo_TipoParticipante = {}));
188
+ function menuItem(titulo, destino) { return { tipo: 'item', titulo, destino }; }
189
+ function menuGrupo(titulo, itens) { return { tipo: 'grupo', titulo, itens }; }
190
+ function menuVazio() { return { tipo: 'vazio' }; }
191
+ function menuDinamico() { return { tipo: 'dinamico' }; }
192
+ function montarHref(template, params) {
193
+ const out = template.replace(/\[\[\.\.\.([^\]]+)\]\]|\[\.\.\.([^\]]+)\]|\[([^\]]+)\]/g, (_m, optCatchAll, catchAll, single) => {
194
+ const key = (optCatchAll || catchAll || single);
195
+ const value = params[key];
196
+ if (optCatchAll) {
197
+ if (value == null)
198
+ return '';
199
+ if (!Array.isArray(value))
200
+ throw new Error(`PAGINAS.montarHref: "${key}" deve ser (string|number)[] (optional catch-all)`);
201
+ return value.map((x) => encodeURIComponent(String(x))).join('/');
202
+ }
203
+ if (catchAll) {
204
+ if (!Array.isArray(value))
205
+ throw new Error(`PAGINAS.montarHref: "${key}" deve ser (string|number)[] (catch-all)`);
206
+ return value.map((x) => encodeURIComponent(String(x))).join('/');
207
+ }
208
+ if (value == null)
209
+ throw new Error(`PAGINAS.montarHref: "${key}" é obrigatório`);
210
+ if (Array.isArray(value))
211
+ throw new Error(`PAGINAS.montarHref: "${key}" deve ser string|number (single param)`);
212
+ return encodeURIComponent(String(value));
213
+ });
214
+ const cleaned = out.replace(/\/+/g, '/').replace(/\/$/, '');
215
+ return cleaned === '' ? '/' : cleaned;
216
+ }
217
+ function limparUndefined(obj) {
218
+ const out = {};
219
+ for (const k in obj) {
220
+ if (!Object.prototype.hasOwnProperty.call(obj, k))
221
+ continue;
222
+ const key = k;
223
+ const v = obj[key];
224
+ if (v !== undefined)
225
+ out[key] = v;
226
+ }
227
+ return out;
228
+ }
229
+ function pagina(hrefTemplate, info) {
230
+ const template = hrefTemplate;
231
+ return limparUndefined({ template, hrefTemplate, href: hrefTemplate, ...info });
232
+ }
233
+ function paginaComLayoutContextualizado(hrefTemplate, info, layoutContextualizadoInicial) {
234
+ const template = hrefTemplate;
235
+ return limparUndefined({ template, hrefTemplate, href: hrefTemplate, ...info, layoutContextualizadoInicial });
236
+ }
237
+ function toParamsRecord(params) {
238
+ const out = {};
239
+ for (const k in params) {
240
+ if (!Object.prototype.hasOwnProperty.call(params, k))
241
+ continue;
242
+ out[k] = params[k];
243
+ }
244
+ return out;
245
+ }
246
+ function isWsErrorResponse(payload) { return !!payload && typeof payload === "object" && payload._wsErro === true; }
247
+ function isWsUnauthorizedErrorResponse(payload) { return isWsErrorResponse(payload) && payload.code === "UNAUTHORIZED"; }
248
+ function wsErro(mensagem, extra) { return { _wsErro: true, mensagem, ...(extra ?? {}) }; }
249
+ function wsUnauthorized(mensagem = "Não autorizado", detalhes) { return { _wsErro: true, mensagem, code: "UNAUTHORIZED", detalhes }; }
250
+ // helper que elimina o if manual no gateway
251
+ function wsMap(value, mapper) { return isWsErrorResponse(value) ? value : mapper(value); }
252
+ // opcional para encadear fluxos no service/repository se quiser evoluir
253
+ function wsChain(value, next) { return isWsErrorResponse(value) ? value : next(value); }
254
+ function createGateway(def) { return def; }
255
+ //
256
+ var EventosWebSocket;
257
+ (function (EventosWebSocket) {
258
+ const Chat = createGateway({
259
+ enviaMensagem: {
260
+ tipo: 'envia',
261
+ payload: { salaId: '', conteudoMensagem: '' },
262
+ },
263
+ emitirSalas: {
264
+ tipo: 'envia-e-recebe',
265
+ payload: {},
266
+ response: { salas: [] },
267
+ // autenticacao_necessaria: false,
268
+ },
269
+ emitirMensagem: {
270
+ tipo: 'emite',
271
+ payload: { mensagemId: 0 },
272
+ response: { conteudoMensagem: {} },
273
+ delivery: 'broadcast',
274
+ },
275
+ });
276
+ const ExecucaoDeJogo = createGateway({
277
+ executaTestePericia: {
278
+ tipo: 'envia',
279
+ payload: {},
280
+ },
281
+ emitirMensagemSalaJogo: {
282
+ tipo: 'emite',
283
+ payload: { mensagemSalaJogo: {} },
284
+ response: { mensagemSalaJogo: {} },
285
+ },
286
+ });
287
+ const Jogo = createGateway({
288
+ requisicaoDeFechamentoDeSalaAberta: {
289
+ tipo: 'envia-e-recebe',
290
+ payload: { codigoSalaDeJogo: {} },
291
+ response: {},
292
+ },
293
+ emitirEstouEmJogo: {
294
+ tipo: 'emite',
295
+ payload: {},
296
+ response: { objetoEstouEmJogo: {} },
297
+ delivery: 'perRecipient',
298
+ },
299
+ emitirObjetoEmJogo: {
300
+ tipo: 'emite',
301
+ payload: {},
302
+ response: { objetoEmJogo: {} },
303
+ delivery: 'perRecipient',
304
+ },
305
+ emitirSessaoEmAndamento: {
306
+ tipo: 'emite',
307
+ payload: {},
308
+ response: { sessaoEmAndamento: {} },
309
+ delivery: 'perRecipient',
310
+ },
311
+ emitirTodasSalas: {
312
+ tipo: 'emite',
313
+ payload: {},
314
+ response: { salas: [] },
315
+ delivery: 'broadcast',
316
+ },
317
+ NARRADOR_executaAcaoParticipante_PROTOTIPO: {
318
+ tipo: 'envia',
319
+ payload: {},
320
+ },
321
+ emitirFichaEmJogo: {
322
+ tipo: 'emite',
323
+ payload: {},
324
+ response: { fichaAtualizada: {} }
325
+ },
326
+ });
327
+ const UsuariosConectados = createGateway({
328
+ emitirUsuariosConectadosAgora: {
329
+ tipo: 'emite',
330
+ payload: {},
331
+ response: { usuariosConectados: [] },
332
+ delivery: 'broadcast',
333
+ },
334
+ });
335
+ const UsuariosExistentes = createGateway({
336
+ obterTodos: {
337
+ tipo: 'envia-e-recebe',
338
+ payload: {},
339
+ response: { usuariosExistentes: [] },
340
+ // autenticacao_necessaria: false,
341
+ },
342
+ });
343
+ EventosWebSocket.gateways = { Chat, Jogo, ExecucaoDeJogo, UsuariosConectados, UsuariosExistentes };
344
+ })(EventosWebSocket || (EventosWebSocket = {}));
345
+ function isRecord(value) { return typeof value === 'object' && value !== null; }
346
+ function getEmitDelivery(gatewayName, eventName) {
347
+ const gatewaysUnknown = EventosWebSocket.gateways;
348
+ if (!isRecord(gatewaysUnknown))
349
+ return undefined;
350
+ const gw = gatewaysUnknown[gatewayName];
351
+ if (!isRecord(gw))
352
+ return undefined;
353
+ const schema = gw[eventName];
354
+ if (!isRecord(schema))
355
+ return undefined;
356
+ if (schema.tipo !== 'emite')
357
+ return undefined;
358
+ const delivery = schema.delivery;
359
+ if (delivery === 'broadcast' || delivery === 'perRecipient')
360
+ return delivery;
361
+ return undefined;
362
+ }
363
+ export { ARQUIVO_UPLOAD_DEFINICOES, ApiMetodoHttp, ApiTipoRequisicao, ApiTransporte, AuthSession, EventosApi, EventosWebSocket, ParticipanteSessao_Tipo, RegistroPixProvedor, SalaDeJogo_Estado, SalaDeJogo_Tipo, SalaDeJogo_TipoMestre, SalaDeJogo_TipoParticipante, TIPO_SESSAO_LABEL, TesteGraphqlSessaoDto, TipoSessao, TipoVinculoSessaoJogador, createApiGraphqlGet, createApiRestGet, createGateway, criaCaminhoArquivoArte, criaCaminhoArquivoAvatar, getEmitDelivery, isRecord, isWsErrorResponse, isWsUnauthorizedErrorResponse, limparUndefined, menuDinamico, menuGrupo, menuItem, menuVazio, montarHref, obtemDefinicaoUploadTipoArquivo, pagina, paginaComLayoutContextualizado, toParamsRecord, wsChain, wsErro, wsMap, wsUnauthorized };
package/dist/index.d.ts CHANGED
@@ -1 +1,9 @@
1
- export * from './classes';
1
+ export * from './shared';
2
+ export * from './dominio';
3
+ export * from './dtos';
4
+ export * from './api';
5
+ export * from './ws';
6
+ export * from './paginas';
7
+ export * from './menus';
8
+ export * from './acessos';
9
+ export * from './uploads';
package/dist/index.js CHANGED
@@ -1 +1,11 @@
1
- export * from './classes';
1
+ // AUTO-GENERATED FILE - DO NOT EDIT
2
+ // Gerado automaticamente por gerarTypesNoraApi.ts
3
+ export * from './shared';
4
+ export * from './dominio';
5
+ export * from './dtos';
6
+ export * from './api';
7
+ export * from './ws';
8
+ export * from './paginas';
9
+ export * from './menus';
10
+ export * from './acessos';
11
+ export * from './uploads';
@@ -0,0 +1,127 @@
1
+ import type { CtxAcesso } from '../acessos';
2
+ import type { MenuLayoutLeaf, MenuNode } from '../dtos';
3
+ import type { PaginaFolha } from '../paginas';
4
+ declare function filtrarMenuPorAcesso(nodes: readonly MenuNode[], ctx: CtxAcesso): MenuNode[];
5
+ declare const MENU_PRINCIPAL: readonly MenuNode[];
6
+ declare const MENUS_INTERNOS: {
7
+ readonly PAGINAS: {
8
+ readonly jogo: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
9
+ readonly minhasPaginas: {
10
+ readonly menu: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode];
11
+ readonly admin: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
12
+ readonly moderador: readonly [import("../dtos").MenuItemNode];
13
+ readonly mestre: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
14
+ readonly artista: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
15
+ readonly jogador: readonly [import("../dtos").MenuGrupoNode];
16
+ readonly minhasConfiguracoes: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode];
17
+ };
18
+ };
19
+ };
20
+ declare const MENUS_INTERNOS_LAYOUTCONTEXTO: {
21
+ readonly PAGINAS: {
22
+ readonly assistir: {
23
+ readonly tipo: "dinamico";
24
+ };
25
+ readonly jogo: {
26
+ readonly admin: {
27
+ readonly gerenciarSalas: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
28
+ };
29
+ readonly mestre: {
30
+ readonly sessoesMestre: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
31
+ };
32
+ readonly jogador: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
33
+ };
34
+ readonly minhasPaginas: {
35
+ readonly menu: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode];
36
+ readonly admin: {
37
+ readonly menu: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
38
+ readonly aventura: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
39
+ readonly aventuras: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
40
+ readonly dashboardWs: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
41
+ readonly sessao: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
42
+ readonly variaveisAmbiente: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
43
+ readonly dashboardPermissoes: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
44
+ readonly dashboardPermissoesUsuarios: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
45
+ readonly deletarArquivosAbsoluto: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
46
+ readonly deletarArquivosFileServer: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
47
+ readonly uploadRecursosInternos: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
48
+ };
49
+ readonly moderador: {
50
+ readonly menu: readonly [import("../dtos").MenuItemNode];
51
+ readonly dashboardAprovacaoImagensArtista: readonly [import("../dtos").MenuItemNode];
52
+ };
53
+ readonly mestre: {
54
+ readonly menu: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
55
+ readonly aventura: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
56
+ readonly aventuras: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
57
+ readonly sessoesUnicas: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
58
+ readonly personagens: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
59
+ readonly rascunhos: {
60
+ readonly aventuras: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
61
+ readonly sessoesUnicas: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
62
+ };
63
+ readonly sessao: readonly [import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
64
+ readonly temporario: {
65
+ readonly consultarDisponibilidades: {
66
+ readonly tipo: "vazio";
67
+ };
68
+ readonly criarSessaoUnica: {
69
+ readonly tipo: "vazio";
70
+ };
71
+ };
72
+ };
73
+ readonly artista: {
74
+ readonly menu: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
75
+ readonly minhasImagens: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
76
+ readonly adicionarImagem: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
77
+ readonly avatares: {
78
+ readonly gerenciarAvatares: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
79
+ };
80
+ readonly emblemas: {
81
+ readonly gerenciarEmblemas: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode, import("../dtos").MenuGrupoNode, import("../dtos").MenuGrupoNode];
82
+ };
83
+ };
84
+ readonly jogador: {
85
+ readonly menu: readonly [import("../dtos").MenuGrupoNode];
86
+ readonly meusPersonagens: readonly [import("../dtos").MenuGrupoNode];
87
+ readonly minhasFichas: readonly [import("../dtos").MenuGrupoNode];
88
+ readonly criar: {
89
+ readonly ficha: {
90
+ readonly tipo: "vazio";
91
+ };
92
+ readonly personagem: {
93
+ readonly tipo: "vazio";
94
+ };
95
+ };
96
+ };
97
+ readonly minhasDisponibilidades: {
98
+ readonly tipo: "vazio";
99
+ };
100
+ readonly minhasConfiguracoes: {
101
+ readonly menu: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode];
102
+ readonly passeDeJogador: readonly [import("../dtos").MenuItemNode, import("../dtos").MenuItemNode];
103
+ };
104
+ };
105
+ readonly fichas: {
106
+ readonly tipo: "dinamico";
107
+ };
108
+ readonly personagens: {
109
+ readonly tipo: "dinamico";
110
+ };
111
+ readonly sessoes: {
112
+ readonly tipo: "vazio";
113
+ };
114
+ };
115
+ };
116
+ type PaginasNodeValue = object | string | number | boolean | null | undefined;
117
+ type PaginasNodeRecord = Record<string, PaginasNodeValue>;
118
+ type MenusNodeRecord = Record<string, object | undefined>;
119
+ declare function isPaginaComLayout(node: object): node is PaginaFolha;
120
+ declare function isMenuLeaf(node: object): node is MenuLayoutLeaf;
121
+ declare function getPaginaKey(pagina: PaginaFolha): string;
122
+ declare const MENUS_LAYOUTCONTEXTO_POR_PAGINA: ReadonlyMap<string, MenuLayoutLeaf>;
123
+ declare function obterMenuInternoLayoutContexto(pagina: PaginaFolha): MenuLayoutLeaf | undefined;
124
+ declare const MENUS_INTERNOS_POR_PAGINA: ReadonlyMap<string, readonly MenuNode[]>;
125
+ declare function obterMenuInterno(pagina: PaginaFolha): readonly MenuNode[] | undefined;
126
+ declare function resolverMenuInterno(pagina: PaginaFolha): readonly PaginaFolha[] | undefined;
127
+ export { MENUS_INTERNOS, MENUS_INTERNOS_LAYOUTCONTEXTO, MENUS_INTERNOS_POR_PAGINA, MENUS_LAYOUTCONTEXTO_POR_PAGINA, MENU_PRINCIPAL, MenusNodeRecord, PaginasNodeRecord, PaginasNodeValue, filtrarMenuPorAcesso, getPaginaKey, isMenuLeaf, isPaginaComLayout, obterMenuInterno, obterMenuInternoLayoutContexto, resolverMenuInterno };