@semacode/cli 1.5.31 → 1.5.34

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.
Files changed (160) hide show
  1. package/AGENTS.md +308 -0
  2. package/AGENT_CONTEXT_PACK.json +288 -0
  3. package/LICENSE +22 -0
  4. package/README.md +85 -144
  5. package/SEMA_BRIEF.curto.txt +11 -0
  6. package/SEMA_BRIEF.md +617 -0
  7. package/SEMA_BRIEF.micro.txt +9 -0
  8. package/SEMA_INDEX.json +9805 -0
  9. package/dist/billing/index.d.ts +46 -0
  10. package/dist/billing/index.js +143 -0
  11. package/dist/billing/index.js.map +1 -0
  12. package/dist/controleComercialSupabase.d.ts +7 -0
  13. package/dist/controleComercialSupabase.js +6 -0
  14. package/dist/controleComercialSupabase.js.map +1 -0
  15. package/dist/controleComercialSupabaseAdmin.d.ts +7 -0
  16. package/dist/controleComercialSupabaseAdmin.js +138 -0
  17. package/dist/controleComercialSupabaseAdmin.js.map +1 -0
  18. package/dist/controleComercialSupabaseCadastro.d.ts +4 -0
  19. package/dist/controleComercialSupabaseCadastro.js +85 -0
  20. package/dist/controleComercialSupabaseCadastro.js.map +1 -0
  21. package/dist/controleComercialSupabaseConstantes.d.ts +28 -0
  22. package/dist/controleComercialSupabaseConstantes.js +44 -0
  23. package/dist/controleComercialSupabaseConstantes.js.map +1 -0
  24. package/dist/controleComercialSupabaseConsumo.d.ts +2 -0
  25. package/dist/controleComercialSupabaseConsumo.js +77 -0
  26. package/dist/controleComercialSupabaseConsumo.js.map +1 -0
  27. package/dist/controleComercialSupabaseConta.d.ts +11 -0
  28. package/dist/controleComercialSupabaseConta.js +157 -0
  29. package/dist/controleComercialSupabaseConta.js.map +1 -0
  30. package/dist/controleComercialSupabaseProfiles.d.ts +4 -0
  31. package/dist/controleComercialSupabaseProfiles.js +55 -0
  32. package/dist/controleComercialSupabaseProfiles.js.map +1 -0
  33. package/dist/controleComercialSupabaseTipos.d.ts +3 -0
  34. package/dist/controleComercialSupabaseTipos.js +2 -0
  35. package/dist/controleComercialSupabaseTipos.js.map +1 -0
  36. package/dist/controleComercialSupabaseTiposAdmin.d.ts +152 -0
  37. package/dist/controleComercialSupabaseTiposAdmin.js +2 -0
  38. package/dist/controleComercialSupabaseTiposAdmin.js.map +1 -0
  39. package/dist/controleComercialSupabaseTiposBase.d.ts +169 -0
  40. package/dist/controleComercialSupabaseTiposBase.js +2 -0
  41. package/dist/controleComercialSupabaseTiposBase.js.map +1 -0
  42. package/dist/controleComercialSupabaseTiposConta.d.ts +220 -0
  43. package/dist/controleComercialSupabaseTiposConta.js +2 -0
  44. package/dist/controleComercialSupabaseTiposConta.js.map +1 -0
  45. package/dist/docs.js +72 -5
  46. package/dist/docs.js.map +1 -1
  47. package/dist/index.js +701 -185
  48. package/dist/index.js.map +1 -1
  49. package/dist/runnerValidacaoRemota.d.ts +9 -0
  50. package/dist/runnerValidacaoRemota.js +9 -0
  51. package/dist/runnerValidacaoRemota.js.map +1 -0
  52. package/dist/runnerValidacaoRemotaBateria.d.ts +10 -0
  53. package/dist/runnerValidacaoRemotaBateria.js +115 -0
  54. package/dist/runnerValidacaoRemotaBateria.js.map +1 -0
  55. package/dist/runnerValidacaoRemotaCli.d.ts +4 -0
  56. package/dist/runnerValidacaoRemotaCli.js +86 -0
  57. package/dist/runnerValidacaoRemotaCli.js.map +1 -0
  58. package/dist/runnerValidacaoRemotaComandos.d.ts +7 -0
  59. package/dist/runnerValidacaoRemotaComandos.js +123 -0
  60. package/dist/runnerValidacaoRemotaComandos.js.map +1 -0
  61. package/dist/runnerValidacaoRemotaEscopo.d.ts +4 -0
  62. package/dist/runnerValidacaoRemotaEscopo.js +79 -0
  63. package/dist/runnerValidacaoRemotaEscopo.js.map +1 -0
  64. package/dist/runnerValidacaoRemotaExecucao.d.ts +2 -0
  65. package/dist/runnerValidacaoRemotaExecucao.js +102 -0
  66. package/dist/runnerValidacaoRemotaExecucao.js.map +1 -0
  67. package/dist/runnerValidacaoRemotaRelatorio.d.ts +3 -0
  68. package/dist/runnerValidacaoRemotaRelatorio.js +93 -0
  69. package/dist/runnerValidacaoRemotaRelatorio.js.map +1 -0
  70. package/dist/runnerValidacaoRemotaServidor.d.ts +3 -0
  71. package/dist/runnerValidacaoRemotaServidor.js +157 -0
  72. package/dist/runnerValidacaoRemotaServidor.js.map +1 -0
  73. package/dist/runnerValidacaoRemotaSnapshot.d.ts +10 -0
  74. package/dist/runnerValidacaoRemotaSnapshot.js +217 -0
  75. package/dist/runnerValidacaoRemotaSnapshot.js.map +1 -0
  76. package/dist/runnerValidacaoRemotaTipos.d.ts +158 -0
  77. package/dist/runnerValidacaoRemotaTipos.js +35 -0
  78. package/dist/runnerValidacaoRemotaTipos.js.map +1 -0
  79. package/dist/runnerValidacaoRemotaUtil.d.ts +3 -0
  80. package/dist/runnerValidacaoRemotaUtil.js +18 -0
  81. package/dist/runnerValidacaoRemotaUtil.js.map +1 -0
  82. package/dist/runnerValidacaoRemotaWorkspace.d.ts +2 -0
  83. package/dist/runnerValidacaoRemotaWorkspace.js +110 -0
  84. package/dist/runnerValidacaoRemotaWorkspace.js.map +1 -0
  85. package/docs/AGENT_STARTER.md +109 -0
  86. package/docs/agentes-por-capacidade.md +42 -0
  87. package/docs/api.md +82 -0
  88. package/docs/cli.md +93 -0
  89. package/docs/como-ensinar-a-sema-para-ia.md +30 -0
  90. package/docs/deploy.md +45 -0
  91. package/docs/documentacao.md +88 -0
  92. package/docs/env.md +115 -0
  93. package/docs/extensao-vscode.md +42 -0
  94. package/docs/fluxo-pratico-ia-sema.md +195 -0
  95. package/docs/instalacao-e-primeiro-uso.md +48 -0
  96. package/docs/integracao-com-ia.md +38 -0
  97. package/docs/mcp.md +54 -0
  98. package/docs/pagamento-ponta-a-ponta.md +171 -0
  99. package/docs/persistencia-vendor-first.md +151 -0
  100. package/docs/prompt-base-ia-sema.md +111 -0
  101. package/docs/repositories.md +69 -0
  102. package/docs/rollback.md +24 -0
  103. package/docs/seguranca.md +126 -0
  104. package/docs/sintaxe.md +218 -0
  105. package/exemplos/profile_conversas.sema +165 -0
  106. package/llms-full.txt +35 -0
  107. package/llms.txt +18 -0
  108. package/node_modules/@sema/gerador-css/package.json +7 -14
  109. package/node_modules/@sema/gerador-dart/package.json +7 -14
  110. package/node_modules/@sema/gerador-html/package.json +7 -14
  111. package/node_modules/@sema/gerador-javascript/package.json +7 -14
  112. package/node_modules/@sema/gerador-lua/package.json +7 -14
  113. package/node_modules/@sema/gerador-python/package.json +7 -14
  114. package/node_modules/@sema/gerador-typescript/package.json +7 -14
  115. package/node_modules/@sema/nucleo/package.json +7 -10
  116. package/node_modules/@sema/padroes/package.json +7 -10
  117. package/package.json +75 -74
  118. package/exemplos/.prepack-generated +0 -1
  119. package/node_modules/@sema/gerador-css/src/index.ts +0 -605
  120. package/node_modules/@sema/gerador-css/tsconfig.json +0 -13
  121. package/node_modules/@sema/gerador-css/tsconfig.tsbuildinfo +0 -1
  122. package/node_modules/@sema/gerador-dart/src/index.ts +0 -52
  123. package/node_modules/@sema/gerador-dart/tsconfig.json +0 -13
  124. package/node_modules/@sema/gerador-dart/tsconfig.tsbuildinfo +0 -1
  125. package/node_modules/@sema/gerador-html/src/index.ts +0 -185
  126. package/node_modules/@sema/gerador-html/tsconfig.json +0 -13
  127. package/node_modules/@sema/gerador-html/tsconfig.tsbuildinfo +0 -1
  128. package/node_modules/@sema/gerador-javascript/src/index.ts +0 -461
  129. package/node_modules/@sema/gerador-javascript/tsconfig.json +0 -13
  130. package/node_modules/@sema/gerador-javascript/tsconfig.tsbuildinfo +0 -1
  131. package/node_modules/@sema/gerador-lua/src/index.ts +0 -359
  132. package/node_modules/@sema/gerador-lua/tsconfig.json +0 -13
  133. package/node_modules/@sema/gerador-lua/tsconfig.tsbuildinfo +0 -1
  134. package/node_modules/@sema/gerador-python/src/index.ts +0 -850
  135. package/node_modules/@sema/gerador-python/tsconfig.json +0 -13
  136. package/node_modules/@sema/gerador-python/tsconfig.tsbuildinfo +0 -1
  137. package/node_modules/@sema/gerador-typescript/src/index.ts +0 -876
  138. package/node_modules/@sema/gerador-typescript/tsconfig.json +0 -13
  139. package/node_modules/@sema/gerador-typescript/tsconfig.tsbuildinfo +0 -1
  140. package/node_modules/@sema/nucleo/src/ast/tipos.ts +0 -207
  141. package/node_modules/@sema/nucleo/src/diagnosticos/index.ts +0 -43
  142. package/node_modules/@sema/nucleo/src/diagnosticos/melhorador.ts +0 -130
  143. package/node_modules/@sema/nucleo/src/formatador/index.ts +0 -530
  144. package/node_modules/@sema/nucleo/src/index.ts +0 -184
  145. package/node_modules/@sema/nucleo/src/ir/conversor.ts +0 -1037
  146. package/node_modules/@sema/nucleo/src/ir/modelos.ts +0 -403
  147. package/node_modules/@sema/nucleo/src/lexer/lexer.ts +0 -166
  148. package/node_modules/@sema/nucleo/src/lexer/tokens.ts +0 -79
  149. package/node_modules/@sema/nucleo/src/parser/gramatica.ebnf +0 -41
  150. package/node_modules/@sema/nucleo/src/parser/parser.ts +0 -936
  151. package/node_modules/@sema/nucleo/src/persistencia/contratos.ts +0 -379
  152. package/node_modules/@sema/nucleo/src/semantico/analisador.ts +0 -3126
  153. package/node_modules/@sema/nucleo/src/semantico/estruturas.ts +0 -665
  154. package/node_modules/@sema/nucleo/src/semantico/seguranca.ts +0 -362
  155. package/node_modules/@sema/nucleo/src/util/arquivos.ts +0 -28
  156. package/node_modules/@sema/nucleo/tsconfig.json +0 -9
  157. package/node_modules/@sema/nucleo/tsconfig.tsbuildinfo +0 -1
  158. package/node_modules/@sema/padroes/src/index.ts +0 -382
  159. package/node_modules/@sema/padroes/tsconfig.json +0 -9
  160. package/node_modules/@sema/padroes/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseConsumo.js","sourceRoot":"","sources":["../src/controleComercialSupabaseConsumo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { AtualizarPerfilContaInput, AtualizarPerfilContaResult, ArquivarProjetoWorkspaceInput, ArquivarProjetoWorkspaceResult, AtualizarProjetoWorkspaceInput, AtualizarProjetoWorkspaceResult, CriarProjetoWorkspaceInput, CriarProjetoWorkspaceResult, GerarChaveMcpWorkspaceInput, GerarChaveMcpWorkspaceResult, RegistrarPresencaUsuarioInput, RegistrarPresencaUsuarioResult, RevogarChaveMcpWorkspaceInput, RevogarChaveMcpWorkspaceResult, SemaAccountContext, SemaAccountProfile, SemaMcpClientContext, SupabaseRpcClient } from "./controleComercialSupabaseTipos.js";
2
+ export declare function consultarPainelUsuario(client: SupabaseRpcClient): Promise<SemaAccountContext>;
3
+ export declare function consultarPerfilConta(client: SupabaseRpcClient): Promise<SemaAccountProfile>;
4
+ export declare function atualizarPerfilConta(client: SupabaseRpcClient, input: AtualizarPerfilContaInput): Promise<AtualizarPerfilContaResult>;
5
+ export declare function registrarPresencaUsuario(client: SupabaseRpcClient, input?: RegistrarPresencaUsuarioInput): Promise<RegistrarPresencaUsuarioResult>;
6
+ export declare function criarProjetoWorkspace(client: SupabaseRpcClient, input: CriarProjetoWorkspaceInput): Promise<CriarProjetoWorkspaceResult>;
7
+ export declare function atualizarProjetoWorkspace(client: SupabaseRpcClient, input: AtualizarProjetoWorkspaceInput): Promise<AtualizarProjetoWorkspaceResult>;
8
+ export declare function arquivarProjetoWorkspace(client: SupabaseRpcClient, input: ArquivarProjetoWorkspaceInput): Promise<ArquivarProjetoWorkspaceResult>;
9
+ export declare function consultarChaveMcpWorkspace(client: SupabaseRpcClient): Promise<SemaMcpClientContext>;
10
+ export declare function gerarChaveMcpWorkspace(client: SupabaseRpcClient, input?: GerarChaveMcpWorkspaceInput): Promise<GerarChaveMcpWorkspaceResult>;
11
+ export declare function revogarChaveMcpWorkspace(client: SupabaseRpcClient, input: RevogarChaveMcpWorkspaceInput): Promise<RevogarChaveMcpWorkspaceResult>;
@@ -0,0 +1,157 @@
1
+ import { ACCOUNT_CONTEXT_RPC, ACCOUNT_PROFILE_RPC, ARCHIVE_PROJECT_RPC, CREATE_PROJECT_RPC, GENERATE_MCP_KEY_RPC, GET_MCP_KEY_CONTEXT_RPC, REVOKE_MCP_KEY_RPC, TOUCH_PRESENCE_RPC, UPDATE_ACCOUNT_PROFILE_RPC, UPDATE_PROJECT_RPC } from "./controleComercialSupabaseConstantes.js";
2
+ export async function consultarPainelUsuario(client) {
3
+ const resposta = await client.rpc(ACCOUNT_CONTEXT_RPC, {});
4
+ if (resposta.error) {
5
+ throw new Error(resposta.error.message ?? "Falha ao consultar painel da conta Sema.");
6
+ }
7
+ if (!resposta.data) {
8
+ throw new Error("Consulta de painel nao retornou dados.");
9
+ }
10
+ return resposta.data;
11
+ }
12
+ export async function consultarPerfilConta(client) {
13
+ const resposta = await client.rpc(ACCOUNT_PROFILE_RPC, {});
14
+ if (resposta.error) {
15
+ throw new Error(resposta.error.message ?? "Falha ao consultar perfil da conta Sema.");
16
+ }
17
+ if (!resposta.data) {
18
+ throw new Error("Consulta de perfil nao retornou dados.");
19
+ }
20
+ return resposta.data;
21
+ }
22
+ export async function atualizarPerfilConta(client, input) {
23
+ const displayName = input.displayName?.trim() ?? "";
24
+ const phone = input.phone?.trim() ?? "";
25
+ const locale = input.locale?.trim() ?? "";
26
+ const timezone = input.timezone?.trim() ?? "";
27
+ if (displayName.length > 160) {
28
+ throw new Error("nome do perfil excede 160 caracteres.");
29
+ }
30
+ if (phone.length > 40) {
31
+ throw new Error("telefone do perfil excede 40 caracteres.");
32
+ }
33
+ const resposta = await client.rpc(UPDATE_ACCOUNT_PROFILE_RPC, {
34
+ p_display_name: displayName || null,
35
+ p_phone: phone || null,
36
+ p_locale: locale || null,
37
+ p_timezone: timezone || null,
38
+ });
39
+ if (resposta.error) {
40
+ throw new Error(resposta.error.message ?? "Falha ao atualizar perfil da conta Sema.");
41
+ }
42
+ if (!resposta.data?.updated) {
43
+ throw new Error("Atualizacao de perfil nao retornou confirmacao.");
44
+ }
45
+ return resposta.data;
46
+ }
47
+ export async function registrarPresencaUsuario(client, input = {}) {
48
+ const resposta = await client.rpc(TOUCH_PRESENCE_RPC, {
49
+ p_page: input.page?.trim() || "/painel",
50
+ p_metadata: input.metadata ?? {},
51
+ });
52
+ if (resposta.error) {
53
+ throw new Error(resposta.error.message ?? "Falha ao registrar presenca da conta Sema.");
54
+ }
55
+ if (!resposta.data?.registered) {
56
+ throw new Error("Presenca da conta nao retornou confirmacao.");
57
+ }
58
+ return resposta.data;
59
+ }
60
+ export async function criarProjetoWorkspace(client, input) {
61
+ const name = input.name.trim();
62
+ if (!name) {
63
+ throw new Error("nome do projeto e obrigatorio.");
64
+ }
65
+ const resposta = await client.rpc(CREATE_PROJECT_RPC, {
66
+ p_name: name,
67
+ p_description: input.description?.trim() || null,
68
+ });
69
+ if (resposta.error) {
70
+ throw new Error(resposta.error.message ?? "Falha ao criar projeto no workspace Sema.");
71
+ }
72
+ if (!resposta.data?.created) {
73
+ throw new Error("Criacao de projeto nao retornou confirmacao.");
74
+ }
75
+ return resposta.data;
76
+ }
77
+ export async function atualizarProjetoWorkspace(client, input) {
78
+ if (!input.projectId) {
79
+ throw new Error("projectId e obrigatorio para atualizar projeto.");
80
+ }
81
+ const hasName = input.name !== undefined;
82
+ const hasDescription = input.description !== undefined;
83
+ const name = hasName ? input.name?.trim() : undefined;
84
+ const description = hasDescription ? input.description?.trim() : undefined;
85
+ if (!hasName && !hasDescription) {
86
+ throw new Error("nome ou descricao do projeto e obrigatorio.");
87
+ }
88
+ if (hasName && !name) {
89
+ throw new Error("nome do projeto e obrigatorio.");
90
+ }
91
+ const resposta = await client.rpc(UPDATE_PROJECT_RPC, {
92
+ p_project_id: input.projectId,
93
+ p_name: name ?? null,
94
+ p_description: description ?? null,
95
+ });
96
+ if (resposta.error) {
97
+ throw new Error(resposta.error.message ?? "Falha ao atualizar projeto no workspace Sema.");
98
+ }
99
+ if (!resposta.data?.updated) {
100
+ throw new Error("Atualizacao de projeto nao retornou confirmacao.");
101
+ }
102
+ return resposta.data;
103
+ }
104
+ export async function arquivarProjetoWorkspace(client, input) {
105
+ if (!input.projectId) {
106
+ throw new Error("projectId e obrigatorio para arquivar projeto.");
107
+ }
108
+ const resposta = await client.rpc(ARCHIVE_PROJECT_RPC, {
109
+ p_project_id: input.projectId,
110
+ });
111
+ if (resposta.error) {
112
+ throw new Error(resposta.error.message ?? "Falha ao arquivar projeto no workspace Sema.");
113
+ }
114
+ if (!resposta.data?.archived) {
115
+ throw new Error("Arquivamento de projeto nao retornou confirmacao.");
116
+ }
117
+ return resposta.data;
118
+ }
119
+ export async function consultarChaveMcpWorkspace(client) {
120
+ const resposta = await client.rpc(GET_MCP_KEY_CONTEXT_RPC, {});
121
+ if (resposta.error) {
122
+ throw new Error(resposta.error.message ?? "Falha ao consultar chave MCP do workspace Sema.");
123
+ }
124
+ if (!resposta.data) {
125
+ throw new Error("Consulta de chave MCP nao retornou dados.");
126
+ }
127
+ return resposta.data;
128
+ }
129
+ export async function gerarChaveMcpWorkspace(client, input = {}) {
130
+ const resposta = await client.rpc(GENERATE_MCP_KEY_RPC, {
131
+ p_name: input.name ?? "Painel Sema",
132
+ p_project_id: input.projectId ?? null,
133
+ });
134
+ if (resposta.error) {
135
+ throw new Error(resposta.error.message ?? "Falha ao gerar chave MCP do workspace Sema.");
136
+ }
137
+ if (!resposta.data?.generated || !resposta.data.token) {
138
+ throw new Error("Geracao de chave MCP nao retornou token copiavel.");
139
+ }
140
+ return resposta.data;
141
+ }
142
+ export async function revogarChaveMcpWorkspace(client, input) {
143
+ if (!input.clientId) {
144
+ throw new Error("clientId e obrigatorio para revogar chave MCP.");
145
+ }
146
+ const resposta = await client.rpc(REVOKE_MCP_KEY_RPC, {
147
+ p_client_id: input.clientId,
148
+ });
149
+ if (resposta.error) {
150
+ throw new Error(resposta.error.message ?? "Falha ao revogar chave MCP do workspace Sema.");
151
+ }
152
+ if (!resposta.data?.revoked) {
153
+ throw new Error("Revogacao de chave MCP nao retornou confirmacao.");
154
+ }
155
+ return resposta.data;
156
+ }
157
+ //# sourceMappingURL=controleComercialSupabaseConta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseConta.js","sourceRoot":"","sources":["../src/controleComercialSupabaseConta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAEpR,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,MAAyB;IACpE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAqB,mBAAmB,EAAE,EAAE,CAAC,CAAC;IAE/E,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,0CAA0C,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAAyB;IAClE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAqB,mBAAmB,EAAE,EAAE,CAAC,CAAC;IAE/E,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,0CAA0C,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAyB,EACzB,KAAgC;IAEhC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAE9C,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAA6B,0BAA0B,EAAE;QACxF,cAAc,EAAE,WAAW,IAAI,IAAI;QACnC,OAAO,EAAE,KAAK,IAAI,IAAI;QACtB,QAAQ,EAAE,MAAM,IAAI,IAAI;QACxB,UAAU,EAAE,QAAQ,IAAI,IAAI;KAC7B,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,0CAA0C,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAyB,EACzB,QAAuC,EAAE;IAEzC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAiC,kBAAkB,EAAE;QACpF,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,SAAS;QACvC,UAAU,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;KACjC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,4CAA4C,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAyB,EACzB,KAAiC;IAEjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAA8B,kBAAkB,EAAE;QACjF,MAAM,EAAE,IAAI;QACZ,aAAa,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI;KACjD,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,2CAA2C,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAyB,EACzB,KAAqC;IAErC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC;IACzC,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAE3E,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAkC,kBAAkB,EAAE;QACrF,YAAY,EAAE,KAAK,CAAC,SAAS;QAC7B,MAAM,EAAE,IAAI,IAAI,IAAI;QACpB,aAAa,EAAE,WAAW,IAAI,IAAI;KACnC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,+CAA+C,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAyB,EACzB,KAAoC;IAEpC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAiC,mBAAmB,EAAE;QACrF,YAAY,EAAE,KAAK,CAAC,SAAS;KAC9B,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,8CAA8C,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,MAAyB;IACxE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAuB,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAErF,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,iDAAiD,CAAC,CAAC;IAC/F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAyB,EACzB,QAAqC,EAAE;IAEvC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAA+B,oBAAoB,EAAE;QACpF,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,aAAa;QACnC,YAAY,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;KACtC,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,6CAA6C,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAyB,EACzB,KAAoC;IAEpC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAiC,kBAAkB,EAAE;QACpF,WAAW,EAAE,KAAK,CAAC,QAAQ;KAC5B,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,IAAI,+CAA+C,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ConfigurarProfileWorkspaceInput, ConfigurarProfileWorkspaceResult, EstimarCustoOperacaoSemaInput, SemaOperationCost, SemaProfileSettingsContext, SupabaseRpcClient } from "./controleComercialSupabaseTipos.js";
2
+ export declare function estimarCustoOperacaoSema(client: SupabaseRpcClient, input?: EstimarCustoOperacaoSemaInput): Promise<SemaOperationCost>;
3
+ export declare function consultarProfilesWorkspace(client: SupabaseRpcClient, projectId?: string | null): Promise<SemaProfileSettingsContext>;
4
+ export declare function configurarProfileWorkspace(client: SupabaseRpcClient, input: ConfigurarProfileWorkspaceInput): Promise<ConfigurarProfileWorkspaceResult>;
@@ -0,0 +1,55 @@
1
+ import { ESTIMATE_OPERATION_COST_RPC, GET_PROFILE_PREFERENCES_RPC, SET_PROFILE_PREFERENCE_RPC } from "./controleComercialSupabaseConstantes.js";
2
+ export async function estimarCustoOperacaoSema(client, input = {}) {
3
+ const operationCode = input.operationCode?.trim() || null;
4
+ const toolName = input.toolName?.trim() || null;
5
+ if (!operationCode && !toolName) {
6
+ throw new Error("operationCode ou toolName e obrigatorio para estimar custo em SEMAS.");
7
+ }
8
+ const resposta = await client.rpc(ESTIMATE_OPERATION_COST_RPC, {
9
+ p_operation_code: operationCode,
10
+ p_tool_name: toolName,
11
+ p_metadata: input.metadata ?? {},
12
+ });
13
+ if (resposta.error) {
14
+ throw new Error(resposta.error.message ?? "Falha ao estimar custo da operacao Sema.");
15
+ }
16
+ if (!resposta.data?.semas || resposta.data.semas <= 0) {
17
+ throw new Error("Estimativa de custo Sema nao retornou SEMAS validas.");
18
+ }
19
+ return resposta.data;
20
+ }
21
+ export async function consultarProfilesWorkspace(client, projectId) {
22
+ const resposta = await client.rpc(GET_PROFILE_PREFERENCES_RPC, {
23
+ p_project_id: projectId ?? null,
24
+ });
25
+ if (resposta.error) {
26
+ throw new Error(resposta.error.message ?? "Falha ao consultar profiles do workspace Sema.");
27
+ }
28
+ return resposta.data ?? { profiles: [], pipelines: [], costPolicy: { unit: "SEMA", costBasis: "operational_cost_100_percent", aiCostIncluded: false, heavyOperationMaxSemas: 300 } };
29
+ }
30
+ export async function configurarProfileWorkspace(client, input) {
31
+ if (!input.profileTool.trim()) {
32
+ throw new Error("profileTool e obrigatorio para configurar profile Sema.");
33
+ }
34
+ const scope = input.scope ?? (input.projectId ? "project" : "global");
35
+ if (scope !== "global" && scope !== "project") {
36
+ throw new Error("scope precisa ser global ou project.");
37
+ }
38
+ if (scope === "project" && !input.projectId) {
39
+ throw new Error("projectId e obrigatorio para configurar profile por projeto.");
40
+ }
41
+ const resposta = await client.rpc(SET_PROFILE_PREFERENCE_RPC, {
42
+ p_project_id: scope === "project" ? input.projectId : null,
43
+ p_profile_tool: input.profileTool,
44
+ p_enabled: input.enabled,
45
+ p_scope: scope,
46
+ });
47
+ if (resposta.error) {
48
+ throw new Error(resposta.error.message ?? "Falha ao configurar profile Sema.");
49
+ }
50
+ if (!resposta.data?.configured) {
51
+ throw new Error("Configuracao de profile nao retornou confirmacao.");
52
+ }
53
+ return resposta.data;
54
+ }
55
+ //# sourceMappingURL=controleComercialSupabaseProfiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseProfiles.js","sourceRoot":"","sources":["../src/controleComercialSupabaseProfiles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export type * from "./controleComercialSupabaseTiposBase.js";
2
+ export type * from "./controleComercialSupabaseTiposConta.js";
3
+ export type * from "./controleComercialSupabaseTiposAdmin.js";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTipos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTipos.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTipos.ts"],"names":[],"mappings":""}
@@ -0,0 +1,152 @@
1
+ export interface SemaAdminMetrics {
2
+ totalUsers: number;
3
+ activeUsers: number;
4
+ onlineUsers: number;
5
+ workspaces: number;
6
+ projects: number;
7
+ plans: number;
8
+ activeMcpKeys: number;
9
+ semasToday: number;
10
+ chargedToday: number;
11
+ callsToday: number;
12
+ queuedAuthActions: number;
13
+ }
14
+ export interface SemaAdminUser {
15
+ id: string;
16
+ email: string;
17
+ displayName?: string | null;
18
+ status: string;
19
+ emailVerified: boolean;
20
+ provider?: string | null;
21
+ locale?: string | null;
22
+ timezone?: string | null;
23
+ organizationId?: string | null;
24
+ organizationName?: string | null;
25
+ organizationRole?: string | null;
26
+ planId?: string | null;
27
+ planName?: string | null;
28
+ monthlySemas?: number | null;
29
+ usedSemas?: number | null;
30
+ reservedSemas?: number | null;
31
+ lastSeenAt?: string | null;
32
+ lastSignInAt?: string | null;
33
+ onlineNow: boolean;
34
+ infiniteSemas: boolean;
35
+ }
36
+ export interface SemaAdminPlan {
37
+ id: string;
38
+ name: string;
39
+ monthlySemas: number;
40
+ projectLimit: number;
41
+ userLimit: number;
42
+ retentionDays: number;
43
+ monthlyPriceUsd: number;
44
+ isPublic: boolean;
45
+ updatedAt?: string;
46
+ }
47
+ export interface SemaAdminSiteContent {
48
+ contentKey: string;
49
+ locale: "pt" | "en" | "es" | string;
50
+ title?: string | null;
51
+ subtitle?: string | null;
52
+ body?: string | null;
53
+ published: boolean;
54
+ updatedAt?: string | null;
55
+ updatedBy?: string | null;
56
+ }
57
+ export interface SemaAdminAuthAction {
58
+ id: string;
59
+ targetUserId: string;
60
+ targetEmail?: string | null;
61
+ actionType: "change_email" | "change_password" | "confirm_email" | "suspend_auth" | string;
62
+ status: "queued" | "executed" | "failed" | "canceled" | string;
63
+ safePayload?: Record<string, unknown>;
64
+ reason?: string;
65
+ requestedBy?: string | null;
66
+ requestedAt?: string;
67
+ executedAt?: string | null;
68
+ executionError?: string | null;
69
+ }
70
+ export interface SemaAdminAuditEvent {
71
+ id: string;
72
+ event: string;
73
+ resourceType?: string | null;
74
+ resourceId?: string | null;
75
+ actorUserId?: string | null;
76
+ metadata?: Record<string, unknown>;
77
+ createdAt?: string;
78
+ }
79
+ export interface SemaAdminConsole {
80
+ authorized: boolean;
81
+ metrics: SemaAdminMetrics;
82
+ users: SemaAdminUser[];
83
+ plans: SemaAdminPlan[];
84
+ siteContent: SemaAdminSiteContent[];
85
+ onlineUsers: SemaAdminUser[];
86
+ audit: SemaAdminAuditEvent[];
87
+ authActions: SemaAdminAuthAction[];
88
+ }
89
+ export interface ConsultarPainelAdminInput {
90
+ search?: string;
91
+ limit?: number;
92
+ }
93
+ export interface RegistrarPresencaAdminInput {
94
+ page?: string;
95
+ metadata?: Record<string, unknown>;
96
+ }
97
+ export interface RegistrarPresencaAdminResult {
98
+ registered: boolean;
99
+ onlineNow: number;
100
+ }
101
+ export interface SalvarPlanoAdminInput {
102
+ id: string;
103
+ name: string;
104
+ monthlySemas: number;
105
+ projectLimit: number;
106
+ userLimit: number;
107
+ retentionDays: number;
108
+ monthlyPriceUsd: number;
109
+ isPublic?: boolean;
110
+ }
111
+ export interface SalvarPlanoAdminResult {
112
+ saved: boolean;
113
+ auditId: string;
114
+ plan: SemaAdminPlan;
115
+ }
116
+ export interface AtualizarUsuarioAdminInput {
117
+ userId: string;
118
+ planId?: string | null;
119
+ status?: "active" | "disabled" | string | null;
120
+ infiniteSemas?: boolean | null;
121
+ adminNote?: string | null;
122
+ }
123
+ export interface AtualizarUsuarioAdminResult {
124
+ updated: boolean;
125
+ auditId: string;
126
+ user: SemaAdminUser;
127
+ }
128
+ export interface SalvarConteudoSiteAdminInput {
129
+ contentKey: string;
130
+ locale: "pt" | "en" | "es" | string;
131
+ title?: string | null;
132
+ subtitle?: string | null;
133
+ body?: string | null;
134
+ published?: boolean;
135
+ }
136
+ export interface SalvarConteudoSiteAdminResult {
137
+ saved: boolean;
138
+ auditId: string;
139
+ content: SemaAdminSiteContent;
140
+ }
141
+ export interface SolicitarAcaoAuthAdminInput {
142
+ targetUserId: string;
143
+ actionType: "change_email" | "change_password" | "confirm_email" | "suspend_auth" | string;
144
+ newEmail?: string | null;
145
+ reason: string;
146
+ }
147
+ export interface SolicitarAcaoAuthAdminResult {
148
+ requested: boolean;
149
+ auditId: string;
150
+ requiresPrivilegedFunction: boolean;
151
+ action: SemaAdminAuthAction;
152
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTiposAdmin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTiposAdmin.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTiposAdmin.ts"],"names":[],"mappings":""}
@@ -0,0 +1,169 @@
1
+ export type SemaPlanId = "free" | "pro" | "team" | "agency";
2
+ export type SemaAuthProvider = "email_password" | "google" | "facebook" | "microsoft";
3
+ export interface SupabaseRpcResult<T> {
4
+ data: T | null;
5
+ error: {
6
+ message?: string;
7
+ } | null;
8
+ }
9
+ export interface SupabaseRpcClient {
10
+ rpc<T>(functionName: string, params: Record<string, unknown>): Promise<SupabaseRpcResult<T>>;
11
+ }
12
+ export interface ProvisionarWorkspaceFreeInput {
13
+ authUserId: string;
14
+ email: string;
15
+ emailVerified: boolean;
16
+ authProvider: SemaAuthProvider | string;
17
+ displayName?: string;
18
+ organizationName?: string;
19
+ projectName?: string;
20
+ }
21
+ export interface ProvisionarWorkspaceFreeResult {
22
+ usuario_id: string;
23
+ organizacao_id: string;
24
+ projeto_id: string;
25
+ assinatura_id: string;
26
+ periodo_inicio: string;
27
+ semas_mensais: number;
28
+ }
29
+ export interface ConsultarContextoComercialUsuarioInput {
30
+ authUserId: string;
31
+ }
32
+ export interface ClaimFreeWorkspaceInput {
33
+ displayName?: string;
34
+ organizationName?: string;
35
+ projectName?: string;
36
+ authProvider?: SemaAuthProvider | string;
37
+ }
38
+ export interface ConsultaContextoComercialUsuarioPlano {
39
+ id: SemaPlanId;
40
+ name: string;
41
+ monthly_semas: number;
42
+ }
43
+ export interface ConsultaContextoComercialUsuarioResult {
44
+ authUserId: string;
45
+ tabelas: readonly string[];
46
+ filtros: {
47
+ perfil: {
48
+ id: string;
49
+ };
50
+ memberships: {
51
+ user_id: string;
52
+ };
53
+ };
54
+ }
55
+ export interface SemaUsageBreakdownItem {
56
+ projectId?: string | null;
57
+ projectName?: string | null;
58
+ projectSlug?: string | null;
59
+ clientId?: string | null;
60
+ clientName?: string | null;
61
+ tokenPrefix?: string | null;
62
+ toolName?: string | null;
63
+ requestedSemas: number;
64
+ chargedSemas: number;
65
+ usedSemas?: number;
66
+ callCount: number;
67
+ adminBypassCount?: number;
68
+ share?: number;
69
+ lastUsedAt?: string | null;
70
+ usagePeriods?: SemaUsagePeriods;
71
+ dailySeries?: SemaUsageDailyPoint[];
72
+ }
73
+ export interface SemaUsagePeriod {
74
+ requestedSemas: number;
75
+ chargedSemas: number;
76
+ usedSemas?: number;
77
+ callCount: number;
78
+ adminBypassCount?: number;
79
+ }
80
+ export interface SemaUsagePeriods {
81
+ today: SemaUsagePeriod;
82
+ week: SemaUsagePeriod;
83
+ month: SemaUsagePeriod;
84
+ all: SemaUsagePeriod;
85
+ }
86
+ export interface SemaUsageDailyPoint {
87
+ date: string;
88
+ requestedSemas: number;
89
+ chargedSemas: number;
90
+ usedSemas?: number;
91
+ callCount: number;
92
+ }
93
+ export interface SemaUsageSummary {
94
+ totalRequestedSemas: number;
95
+ totalChargedSemas: number;
96
+ callCount: number;
97
+ adminBypassCount: number;
98
+ byProject: SemaUsageBreakdownItem[];
99
+ byKey: SemaUsageBreakdownItem[];
100
+ byTool: SemaUsageBreakdownItem[];
101
+ usagePeriods?: SemaUsagePeriods;
102
+ dailySeries?: SemaUsageDailyPoint[];
103
+ }
104
+ export interface SemaOperationCost {
105
+ code: string;
106
+ name: string;
107
+ category: string;
108
+ toolName?: string | null;
109
+ pipelineCode?: string | null;
110
+ semas: number;
111
+ costBasis: "operational_cost_100_percent" | string;
112
+ aiCostIncluded: false;
113
+ metadata?: Record<string, unknown>;
114
+ }
115
+ export interface SemaProfilePreference {
116
+ profileTool: string;
117
+ displayName: string;
118
+ category: "base" | "creative" | "editorial" | "ops" | string;
119
+ description: string;
120
+ defaultEnabled: boolean;
121
+ globalEnabled: boolean;
122
+ projectEnabled?: boolean | null;
123
+ effectiveEnabled: boolean;
124
+ effectiveScope: "global" | "project" | string;
125
+ pipelineCodes?: string[];
126
+ }
127
+ export interface SemaPipelineSuggestion {
128
+ code: string;
129
+ name: string;
130
+ description: string;
131
+ requiredProfiles: string[];
132
+ activeProfiles: number;
133
+ requiredCount: number;
134
+ suggested: boolean;
135
+ estimatedSemas: number;
136
+ costBasis: "operational_cost_100_percent" | string;
137
+ aiCostIncluded: false;
138
+ }
139
+ export interface SemaProfileSettingsContext {
140
+ profiles: SemaProfilePreference[];
141
+ pipelines: SemaPipelineSuggestion[];
142
+ costPolicy: {
143
+ unit: "SEMA" | string;
144
+ costBasis: "operational_cost_100_percent" | string;
145
+ aiCostIncluded: false;
146
+ heavyOperationMaxSemas: number;
147
+ };
148
+ }
149
+ export interface SemaMcpClientSummary {
150
+ id: string;
151
+ name: string;
152
+ tokenPrefix?: string | null;
153
+ token?: string | null;
154
+ copyable?: boolean;
155
+ status: string;
156
+ organizationId?: string;
157
+ defaultProjectId?: string | null;
158
+ projectId?: string | null;
159
+ projectName?: string | null;
160
+ projectSlug?: string | null;
161
+ scope?: "workspace" | "project" | string;
162
+ createdAt?: string;
163
+ updatedAt?: string;
164
+ lastUsedAt?: string | null;
165
+ requestedSemas?: number;
166
+ chargedSemas?: number;
167
+ usedSemas?: number;
168
+ callCount?: number;
169
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=controleComercialSupabaseTiposBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controleComercialSupabaseTiposBase.js","sourceRoot":"","sources":["../src/controleComercialSupabaseTiposBase.ts"],"names":[],"mappings":""}