@constructive-sdk/cli 0.12.18 → 0.12.19

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 (41) hide show
  1. package/admin/cli/commands.js +13 -13
  2. package/admin/cli/executor.d.ts +6 -6
  3. package/admin/orm/index.d.ts +12 -12
  4. package/admin/orm/index.js +12 -12
  5. package/admin/orm/input-types.d.ts +849 -849
  6. package/admin/orm/models/index.d.ts +6 -6
  7. package/admin/orm/models/index.js +13 -13
  8. package/esm/admin/cli/commands.js +13 -13
  9. package/esm/admin/cli/executor.d.ts +6 -6
  10. package/esm/admin/orm/index.d.ts +12 -12
  11. package/esm/admin/orm/index.js +12 -12
  12. package/esm/admin/orm/input-types.d.ts +849 -849
  13. package/esm/admin/orm/models/index.d.ts +6 -6
  14. package/esm/admin/orm/models/index.js +6 -6
  15. package/esm/public/cli/commands/provision-table.js +1 -1
  16. package/esm/public/cli/commands.js +9 -11
  17. package/esm/public/cli/executor.d.ts +4 -5
  18. package/esm/public/orm/index.d.ts +8 -10
  19. package/esm/public/orm/index.js +8 -10
  20. package/esm/public/orm/input-types.d.ts +368 -529
  21. package/esm/public/orm/models/index.d.ts +4 -5
  22. package/esm/public/orm/models/index.js +4 -5
  23. package/esm/public/orm/mutation/index.d.ts +1 -1
  24. package/package.json +3 -3
  25. package/public/cli/commands/provision-table.js +1 -1
  26. package/public/cli/commands.js +9 -11
  27. package/public/cli/executor.d.ts +4 -5
  28. package/public/orm/index.d.ts +8 -10
  29. package/public/orm/index.js +8 -10
  30. package/public/orm/input-types.d.ts +368 -529
  31. package/public/orm/models/index.d.ts +4 -5
  32. package/public/orm/models/index.js +10 -12
  33. package/public/orm/mutation/index.d.ts +1 -1
  34. package/esm/public/cli/commands/node-type-registry.d.ts +0 -8
  35. package/esm/public/cli/commands/node-type-registry.js +0 -399
  36. package/esm/public/orm/models/nodeTypeRegistry.d.ts +0 -56
  37. package/esm/public/orm/models/nodeTypeRegistry.js +0 -96
  38. package/public/cli/commands/node-type-registry.d.ts +0 -8
  39. package/public/cli/commands/node-type-registry.js +0 -401
  40. package/public/orm/models/nodeTypeRegistry.d.ts +0 -56
  41. package/public/orm/models/nodeTypeRegistry.js +0 -100
@@ -94,19 +94,18 @@ export { ClaimedInviteModel } from './claimedInvite';
94
94
  export { OrgInviteModel } from './orgInvite';
95
95
  export { OrgClaimedInviteModel } from './orgClaimedInvite';
96
96
  export { AuditLogModel } from './auditLog';
97
+ export { AppPermissionDefaultModel } from './appPermissionDefault';
97
98
  export { RefModel } from './ref';
98
99
  export { StoreModel } from './store';
99
- export { AppPermissionDefaultModel } from './appPermissionDefault';
100
100
  export { RoleTypeModel } from './roleType';
101
+ export { MigrateFileModel } from './migrateFile';
101
102
  export { AppLimitDefaultModel } from './appLimitDefault';
102
103
  export { OrgLimitDefaultModel } from './orgLimitDefault';
103
- export { MigrateFileModel } from './migrateFile';
104
104
  export { MembershipTypeModel } from './membershipType';
105
- export { CommitModel } from './commit';
106
105
  export { AppMembershipDefaultModel } from './appMembershipDefault';
107
- export { RlsModuleModel } from './rlsModule';
108
- export { NodeTypeRegistryModel } from './nodeTypeRegistry';
106
+ export { CommitModel } from './commit';
109
107
  export { OrgMembershipDefaultModel } from './orgMembershipDefault';
108
+ export { RlsModuleModel } from './rlsModule';
110
109
  export { SqlActionModel } from './sqlAction';
111
110
  export { UserModel } from './user';
112
111
  export { AstMigrationModel } from './astMigration';
@@ -94,19 +94,18 @@ export { ClaimedInviteModel } from './claimedInvite';
94
94
  export { OrgInviteModel } from './orgInvite';
95
95
  export { OrgClaimedInviteModel } from './orgClaimedInvite';
96
96
  export { AuditLogModel } from './auditLog';
97
+ export { AppPermissionDefaultModel } from './appPermissionDefault';
97
98
  export { RefModel } from './ref';
98
99
  export { StoreModel } from './store';
99
- export { AppPermissionDefaultModel } from './appPermissionDefault';
100
100
  export { RoleTypeModel } from './roleType';
101
+ export { MigrateFileModel } from './migrateFile';
101
102
  export { AppLimitDefaultModel } from './appLimitDefault';
102
103
  export { OrgLimitDefaultModel } from './orgLimitDefault';
103
- export { MigrateFileModel } from './migrateFile';
104
104
  export { MembershipTypeModel } from './membershipType';
105
- export { CommitModel } from './commit';
106
105
  export { AppMembershipDefaultModel } from './appMembershipDefault';
107
- export { RlsModuleModel } from './rlsModule';
108
- export { NodeTypeRegistryModel } from './nodeTypeRegistry';
106
+ export { CommitModel } from './commit';
109
107
  export { OrgMembershipDefaultModel } from './orgMembershipDefault';
108
+ export { RlsModuleModel } from './rlsModule';
110
109
  export { SqlActionModel } from './sqlAction';
111
110
  export { UserModel } from './user';
112
111
  export { AstMigrationModel } from './astMigration';
@@ -160,7 +160,7 @@ export interface OneTimeTokenVariables {
160
160
  }
161
161
  /**
162
162
  * Variables for provisionTable
163
- * Composable table provisioning: creates or finds a table, then applies N nodes (Data* modules), creates fields, enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).
163
+ * Composable table provisioning: creates or finds a table, then creates fields (so Data* modules can reference them), applies N nodes (Data* modules), enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).
164
164
  */
165
165
  export interface ProvisionTableVariables {
166
166
  input: ProvisionTableInput;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@constructive-sdk/cli",
3
- "version": "0.12.18",
3
+ "version": "0.12.19",
4
4
  "author": "Constructive <developers@constructive.io>",
5
5
  "description": "Constructive CLI SDK - Auto-generated GraphQL CLI with ORM client, context management, and interactive prompts",
6
6
  "main": "index.js",
@@ -55,11 +55,11 @@
55
55
  "yanse": "^0.2.1"
56
56
  },
57
57
  "devDependencies": {
58
- "@constructive-io/graphql-codegen": "^4.28.2",
58
+ "@constructive-io/graphql-codegen": "^4.28.3",
59
59
  "@types/node": "^22.19.11",
60
60
  "makage": "^0.3.0",
61
61
  "tsx": "^4.19.0",
62
62
  "typescript": "^5.9.3"
63
63
  },
64
- "gitHead": "f1a0d4315e0f23ba6b8299a7dc2ddceab465d24d"
64
+ "gitHead": "d1cfd698f829c6fae346a5004f735acd44519bb7"
65
65
  }
@@ -5,7 +5,7 @@ const utils_1 = require("../utils");
5
5
  exports.default = async (argv, prompter, _options) => {
6
6
  try {
7
7
  if (argv.help || argv.h) {
8
- console.log('provision-table - Composable table provisioning: creates or finds a table, then applies N nodes (Data* modules), creates fields, enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).\n\nUsage: provision-table [OPTIONS]\n');
8
+ console.log('provision-table - Composable table provisioning: creates or finds a table, then creates fields (so Data* modules can reference them), applies N nodes (Data* modules), enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).\n\nUsage: provision-table [OPTIONS]\n');
9
9
  process.exit(0);
10
10
  }
11
11
  const answers = await prompter.prompt(argv, [
@@ -103,19 +103,18 @@ const claimed_invite_1 = __importDefault(require("./commands/claimed-invite"));
103
103
  const org_invite_1 = __importDefault(require("./commands/org-invite"));
104
104
  const org_claimed_invite_1 = __importDefault(require("./commands/org-claimed-invite"));
105
105
  const audit_log_1 = __importDefault(require("./commands/audit-log"));
106
+ const app_permission_default_1 = __importDefault(require("./commands/app-permission-default"));
106
107
  const ref_1 = __importDefault(require("./commands/ref"));
107
108
  const store_1 = __importDefault(require("./commands/store"));
108
- const app_permission_default_1 = __importDefault(require("./commands/app-permission-default"));
109
109
  const role_type_1 = __importDefault(require("./commands/role-type"));
110
+ const migrate_file_1 = __importDefault(require("./commands/migrate-file"));
110
111
  const app_limit_default_1 = __importDefault(require("./commands/app-limit-default"));
111
112
  const org_limit_default_1 = __importDefault(require("./commands/org-limit-default"));
112
- const migrate_file_1 = __importDefault(require("./commands/migrate-file"));
113
113
  const membership_type_1 = __importDefault(require("./commands/membership-type"));
114
- const commit_1 = __importDefault(require("./commands/commit"));
115
114
  const app_membership_default_1 = __importDefault(require("./commands/app-membership-default"));
116
- const rls_module_1 = __importDefault(require("./commands/rls-module"));
117
- const node_type_registry_1 = __importDefault(require("./commands/node-type-registry"));
115
+ const commit_1 = __importDefault(require("./commands/commit"));
118
116
  const org_membership_default_1 = __importDefault(require("./commands/org-membership-default"));
117
+ const rls_module_1 = __importDefault(require("./commands/rls-module"));
119
118
  const sql_action_1 = __importDefault(require("./commands/sql-action"));
120
119
  const user_1 = __importDefault(require("./commands/user"));
121
120
  const ast_migration_1 = __importDefault(require("./commands/ast-migration"));
@@ -276,19 +275,18 @@ const createCommandMap = () => ({
276
275
  'org-invite': org_invite_1.default,
277
276
  'org-claimed-invite': org_claimed_invite_1.default,
278
277
  'audit-log': audit_log_1.default,
278
+ 'app-permission-default': app_permission_default_1.default,
279
279
  ref: ref_1.default,
280
280
  store: store_1.default,
281
- 'app-permission-default': app_permission_default_1.default,
282
281
  'role-type': role_type_1.default,
282
+ 'migrate-file': migrate_file_1.default,
283
283
  'app-limit-default': app_limit_default_1.default,
284
284
  'org-limit-default': org_limit_default_1.default,
285
- 'migrate-file': migrate_file_1.default,
286
285
  'membership-type': membership_type_1.default,
287
- commit: commit_1.default,
288
286
  'app-membership-default': app_membership_default_1.default,
289
- 'rls-module': rls_module_1.default,
290
- 'node-type-registry': node_type_registry_1.default,
287
+ commit: commit_1.default,
291
288
  'org-membership-default': org_membership_default_1.default,
289
+ 'rls-module': rls_module_1.default,
292
290
  'sql-action': sql_action_1.default,
293
291
  user: user_1.default,
294
292
  'ast-migration': ast_migration_1.default,
@@ -356,7 +354,7 @@ const createCommandMap = () => ({
356
354
  'verify-password': verify_password_1.default,
357
355
  'verify-totp': verify_totp_1.default,
358
356
  });
359
- const usage = "\ncsdk <command>\n\nCommands:\n context Manage API contexts\n auth Manage authentication\n org-get-managers-record orgGetManagersRecord CRUD operations\n org-get-subordinates-record orgGetSubordinatesRecord CRUD operations\n get-all-record getAllRecord CRUD operations\n object object CRUD operations\n app-permission appPermission CRUD operations\n org-permission orgPermission CRUD operations\n app-level-requirement appLevelRequirement CRUD operations\n database database CRUD operations\n schema schema CRUD operations\n table table CRUD operations\n check-constraint checkConstraint CRUD operations\n field field CRUD operations\n foreign-key-constraint foreignKeyConstraint CRUD operations\n full-text-search fullTextSearch CRUD operations\n index index CRUD operations\n policy policy CRUD operations\n primary-key-constraint primaryKeyConstraint CRUD operations\n table-grant tableGrant CRUD operations\n trigger trigger CRUD operations\n unique-constraint uniqueConstraint CRUD operations\n view view CRUD operations\n view-table viewTable CRUD operations\n view-grant viewGrant CRUD operations\n view-rule viewRule CRUD operations\n embedding-chunk embeddingChunk CRUD operations\n table-template-module tableTemplateModule CRUD operations\n secure-table-provision secureTableProvision CRUD operations\n relation-provision relationProvision CRUD operations\n schema-grant schemaGrant CRUD operations\n default-privilege defaultPrivilege CRUD operations\n enum enum CRUD operations\n api-schema apiSchema CRUD operations\n api-module apiModule CRUD operations\n domain domain CRUD operations\n site-metadatum siteMetadatum CRUD operations\n site-module siteModule CRUD operations\n site-theme siteTheme CRUD operations\n trigger-function triggerFunction CRUD operations\n database-transfer databaseTransfer CRUD operations\n api api CRUD operations\n site site CRUD operations\n app app CRUD operations\n connected-accounts-module connectedAccountsModule CRUD operations\n crypto-addresses-module cryptoAddressesModule CRUD operations\n crypto-auth-module cryptoAuthModule CRUD operations\n default-ids-module defaultIdsModule CRUD operations\n denormalized-table-field denormalizedTableField CRUD operations\n emails-module emailsModule CRUD operations\n encrypted-secrets-module encryptedSecretsModule CRUD operations\n invites-module invitesModule CRUD operations\n levels-module levelsModule CRUD operations\n limits-module limitsModule CRUD operations\n membership-types-module membershipTypesModule CRUD operations\n memberships-module membershipsModule CRUD operations\n permissions-module permissionsModule CRUD operations\n phone-numbers-module phoneNumbersModule CRUD operations\n profiles-module profilesModule CRUD operations\n secrets-module secretsModule CRUD operations\n sessions-module sessionsModule CRUD operations\n user-auth-module userAuthModule CRUD operations\n users-module usersModule CRUD operations\n blueprint blueprint CRUD operations\n blueprint-template blueprintTemplate CRUD operations\n blueprint-construction blueprintConstruction CRUD operations\n storage-module storageModule CRUD operations\n database-provision-module databaseProvisionModule CRUD operations\n app-admin-grant appAdminGrant CRUD operations\n app-owner-grant appOwnerGrant CRUD operations\n app-grant appGrant CRUD operations\n org-membership orgMembership CRUD operations\n org-member orgMember CRUD operations\n org-admin-grant orgAdminGrant CRUD operations\n org-owner-grant orgOwnerGrant CRUD operations\n org-grant orgGrant CRUD operations\n org-chart-edge orgChartEdge CRUD operations\n org-chart-edge-grant orgChartEdgeGrant CRUD operations\n org-permission-default orgPermissionDefault CRUD operations\n app-limit appLimit CRUD operations\n org-limit orgLimit CRUD operations\n app-step appStep CRUD operations\n app-achievement appAchievement CRUD operations\n app-level appLevel CRUD operations\n email email CRUD operations\n phone-number phoneNumber CRUD operations\n crypto-address cryptoAddress CRUD operations\n connected-account connectedAccount CRUD operations\n invite invite CRUD operations\n claimed-invite claimedInvite CRUD operations\n org-invite orgInvite CRUD operations\n org-claimed-invite orgClaimedInvite CRUD operations\n audit-log auditLog CRUD operations\n ref ref CRUD operations\n store store CRUD operations\n app-permission-default appPermissionDefault CRUD operations\n role-type roleType CRUD operations\n app-limit-default appLimitDefault CRUD operations\n org-limit-default orgLimitDefault CRUD operations\n migrate-file migrateFile CRUD operations\n membership-type membershipType CRUD operations\n commit commit CRUD operations\n app-membership-default appMembershipDefault CRUD operations\n rls-module rlsModule CRUD operations\n node-type-registry nodeTypeRegistry CRUD operations\n org-membership-default orgMembershipDefault CRUD operations\n sql-action sqlAction CRUD operations\n user user CRUD operations\n ast-migration astMigration CRUD operations\n app-membership appMembership CRUD operations\n hierarchy-module hierarchyModule CRUD operations\n current-user-id currentUserId\n current-ip-address currentIpAddress\n current-user-agent currentUserAgent\n app-permissions-get-padded-mask appPermissionsGetPaddedMask\n org-permissions-get-padded-mask orgPermissionsGetPaddedMask\n steps-achieved stepsAchieved\n rev-parse revParse\n org-is-manager-of orgIsManagerOf\n app-permissions-get-mask appPermissionsGetMask\n org-permissions-get-mask orgPermissionsGetMask\n resolve-blueprint-table Resolves a table_name (with optional schema_name) to a table_id. Resolution order: (1) if schema_name provided, exact lookup via metaschema_public.schema.name + metaschema_public.table; (2) check local table_map (tables created in current blueprint); (3) search metaschema_public.table by name across all schemas; (4) if multiple matches, throw ambiguous error asking for schema_name; (5) if no match, throw not-found error.\n app-permissions-get-mask-by-names appPermissionsGetMaskByNames\n org-permissions-get-mask-by-names orgPermissionsGetMaskByNames\n get-all-objects-from-root Reads and enables pagination through a set of `Object`.\n get-path-objects-from-root Reads and enables pagination through a set of `Object`.\n get-object-at-path getObjectAtPath\n app-permissions-get-by-mask Reads and enables pagination through a set of `AppPermission`.\n org-permissions-get-by-mask Reads and enables pagination through a set of `OrgPermission`.\n steps-required Reads and enables pagination through a set of `AppLevelRequirement`.\n current-user currentUser\n send-account-deletion-email sendAccountDeletionEmail\n sign-out signOut\n accept-database-transfer acceptDatabaseTransfer\n cancel-database-transfer cancelDatabaseTransfer\n reject-database-transfer rejectDatabaseTransfer\n submit-invite-code submitInviteCode\n submit-org-invite-code submitOrgInviteCode\n check-password checkPassword\n confirm-delete-account confirmDeleteAccount\n set-password setPassword\n verify-email verifyEmail\n freeze-objects freezeObjects\n init-empty-repo initEmptyRepo\n construct-blueprint Executes a blueprint definition by delegating to provision_* procedures. Creates a blueprint_construction record to track the attempt. Five phases: (1) provision_table() for each table with all nodes[], fields[], policies[], grants, and table-level indexes/fts/unique_constraints in a single call, (2) provision_relation() for each relation, (3) provision_index() for top-level indexes, (4) provision_full_text_search() for top-level FTS, (5) provision_unique_constraint() for top-level unique constraints. Tables are identified by table_name with optional per-table schema_name. Relations use $type for relation_type with source_table/target_table. Returns the construction record ID on success, NULL on failure.\n reset-password resetPassword\n remove-node-at-path removeNodeAtPath\n copy-template-to-blueprint Creates a new blueprint by copying a template definition. Checks visibility: owners can always copy their own templates, others require public visibility. Increments the template copy_count. Returns the new blueprint ID.\n bootstrap-user bootstrapUser\n set-field-order setFieldOrder\n provision-unique-constraint Creates a unique constraint on a table. Accepts a jsonb definition with columns (array of field names). Graceful: skips if the exact same unique constraint already exists.\n provision-full-text-search Creates a full-text search configuration on a table. Accepts a jsonb definition with field (tsvector column name) and sources (array of {field, weight, lang}). Graceful: skips if FTS config already exists for the same (table_id, field_id). Returns the fts_id.\n provision-index Creates an index on a table. Accepts a jsonb definition with columns (array of names or single column string), access_method (default BTREE), is_unique, op_classes, options, and name (auto-generated if omitted). Graceful: skips if an index with the same (table_id, field_ids, access_method) already exists. Returns the index_id.\n set-data-at-path setDataAtPath\n set-props-and-commit setPropsAndCommit\n provision-database-with-user provisionDatabaseWithUser\n insert-node-at-path insertNodeAtPath\n update-node-at-path updateNodeAtPath\n set-and-commit setAndCommit\n provision-relation Composable relation provisioning: creates FK fields, indexes, unique constraints, and junction tables depending on the relation_type. Supports RelationBelongsTo, RelationHasOne, RelationHasMany, and RelationManyToMany. ManyToMany uses provision_table() internally for junction table creation with full node/grant/policy support. All operations are graceful (skip existing). Returns (out_field_id, out_junction_table_id, out_source_field_id, out_target_field_id).\n apply-rls applyRls\n sign-in-one-time-token signInOneTimeToken\n create-user-database Creates a new user database with all required modules, permissions, and RLS policies.\n\nParameters:\n - database_name: Name for the new database (required)\n - owner_id: UUID of the owner user (required)\n - include_invites: Include invite system (default: true)\n - include_groups: Include group-level memberships (default: false)\n - include_levels: Include levels/achievements (default: false)\n - bitlen: Bit length for permission masks (default: 64)\n - tokens_expiration: Token expiration interval (default: 30 days)\n\nReturns the database_id UUID of the newly created database.\n\nExample usage:\n SELECT metaschema_public.create_user_database('my_app', 'a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11'::uuid);\n SELECT metaschema_public.create_user_database('my_app', 'a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11'::uuid, true, true); -- with invites and groups\n\n extend-token-expires extendTokenExpires\n sign-in signIn\n sign-up signUp\n one-time-token oneTimeToken\n provision-table Composable table provisioning: creates or finds a table, then applies N nodes (Data* modules), creates fields, enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).\n send-verification-email sendVerificationEmail\n forgot-password forgotPassword\n verify-password verifyPassword\n verify-totp verifyTotp\n\n --help, -h Show this help message\n --version, -v Show version\n";
357
+ const usage = "\ncsdk <command>\n\nCommands:\n context Manage API contexts\n auth Manage authentication\n org-get-managers-record orgGetManagersRecord CRUD operations\n org-get-subordinates-record orgGetSubordinatesRecord CRUD operations\n get-all-record getAllRecord CRUD operations\n object object CRUD operations\n app-permission appPermission CRUD operations\n org-permission orgPermission CRUD operations\n app-level-requirement appLevelRequirement CRUD operations\n database database CRUD operations\n schema schema CRUD operations\n table table CRUD operations\n check-constraint checkConstraint CRUD operations\n field field CRUD operations\n foreign-key-constraint foreignKeyConstraint CRUD operations\n full-text-search fullTextSearch CRUD operations\n index index CRUD operations\n policy policy CRUD operations\n primary-key-constraint primaryKeyConstraint CRUD operations\n table-grant tableGrant CRUD operations\n trigger trigger CRUD operations\n unique-constraint uniqueConstraint CRUD operations\n view view CRUD operations\n view-table viewTable CRUD operations\n view-grant viewGrant CRUD operations\n view-rule viewRule CRUD operations\n embedding-chunk embeddingChunk CRUD operations\n table-template-module tableTemplateModule CRUD operations\n secure-table-provision secureTableProvision CRUD operations\n relation-provision relationProvision CRUD operations\n schema-grant schemaGrant CRUD operations\n default-privilege defaultPrivilege CRUD operations\n enum enum CRUD operations\n api-schema apiSchema CRUD operations\n api-module apiModule CRUD operations\n domain domain CRUD operations\n site-metadatum siteMetadatum CRUD operations\n site-module siteModule CRUD operations\n site-theme siteTheme CRUD operations\n trigger-function triggerFunction CRUD operations\n database-transfer databaseTransfer CRUD operations\n api api CRUD operations\n site site CRUD operations\n app app CRUD operations\n connected-accounts-module connectedAccountsModule CRUD operations\n crypto-addresses-module cryptoAddressesModule CRUD operations\n crypto-auth-module cryptoAuthModule CRUD operations\n default-ids-module defaultIdsModule CRUD operations\n denormalized-table-field denormalizedTableField CRUD operations\n emails-module emailsModule CRUD operations\n encrypted-secrets-module encryptedSecretsModule CRUD operations\n invites-module invitesModule CRUD operations\n levels-module levelsModule CRUD operations\n limits-module limitsModule CRUD operations\n membership-types-module membershipTypesModule CRUD operations\n memberships-module membershipsModule CRUD operations\n permissions-module permissionsModule CRUD operations\n phone-numbers-module phoneNumbersModule CRUD operations\n profiles-module profilesModule CRUD operations\n secrets-module secretsModule CRUD operations\n sessions-module sessionsModule CRUD operations\n user-auth-module userAuthModule CRUD operations\n users-module usersModule CRUD operations\n blueprint blueprint CRUD operations\n blueprint-template blueprintTemplate CRUD operations\n blueprint-construction blueprintConstruction CRUD operations\n storage-module storageModule CRUD operations\n database-provision-module databaseProvisionModule CRUD operations\n app-admin-grant appAdminGrant CRUD operations\n app-owner-grant appOwnerGrant CRUD operations\n app-grant appGrant CRUD operations\n org-membership orgMembership CRUD operations\n org-member orgMember CRUD operations\n org-admin-grant orgAdminGrant CRUD operations\n org-owner-grant orgOwnerGrant CRUD operations\n org-grant orgGrant CRUD operations\n org-chart-edge orgChartEdge CRUD operations\n org-chart-edge-grant orgChartEdgeGrant CRUD operations\n org-permission-default orgPermissionDefault CRUD operations\n app-limit appLimit CRUD operations\n org-limit orgLimit CRUD operations\n app-step appStep CRUD operations\n app-achievement appAchievement CRUD operations\n app-level appLevel CRUD operations\n email email CRUD operations\n phone-number phoneNumber CRUD operations\n crypto-address cryptoAddress CRUD operations\n connected-account connectedAccount CRUD operations\n invite invite CRUD operations\n claimed-invite claimedInvite CRUD operations\n org-invite orgInvite CRUD operations\n org-claimed-invite orgClaimedInvite CRUD operations\n audit-log auditLog CRUD operations\n app-permission-default appPermissionDefault CRUD operations\n ref ref CRUD operations\n store store CRUD operations\n role-type roleType CRUD operations\n migrate-file migrateFile CRUD operations\n app-limit-default appLimitDefault CRUD operations\n org-limit-default orgLimitDefault CRUD operations\n membership-type membershipType CRUD operations\n app-membership-default appMembershipDefault CRUD operations\n commit commit CRUD operations\n org-membership-default orgMembershipDefault CRUD operations\n rls-module rlsModule CRUD operations\n sql-action sqlAction CRUD operations\n user user CRUD operations\n ast-migration astMigration CRUD operations\n app-membership appMembership CRUD operations\n hierarchy-module hierarchyModule CRUD operations\n current-user-id currentUserId\n current-ip-address currentIpAddress\n current-user-agent currentUserAgent\n app-permissions-get-padded-mask appPermissionsGetPaddedMask\n org-permissions-get-padded-mask orgPermissionsGetPaddedMask\n steps-achieved stepsAchieved\n rev-parse revParse\n org-is-manager-of orgIsManagerOf\n app-permissions-get-mask appPermissionsGetMask\n org-permissions-get-mask orgPermissionsGetMask\n resolve-blueprint-table Resolves a table_name (with optional schema_name) to a table_id. Resolution order: (1) if schema_name provided, exact lookup via metaschema_public.schema.name + metaschema_public.table; (2) check local table_map (tables created in current blueprint); (3) search metaschema_public.table by name across all schemas; (4) if multiple matches, throw ambiguous error asking for schema_name; (5) if no match, throw not-found error.\n app-permissions-get-mask-by-names appPermissionsGetMaskByNames\n org-permissions-get-mask-by-names orgPermissionsGetMaskByNames\n get-all-objects-from-root Reads and enables pagination through a set of `Object`.\n get-path-objects-from-root Reads and enables pagination through a set of `Object`.\n get-object-at-path getObjectAtPath\n app-permissions-get-by-mask Reads and enables pagination through a set of `AppPermission`.\n org-permissions-get-by-mask Reads and enables pagination through a set of `OrgPermission`.\n steps-required Reads and enables pagination through a set of `AppLevelRequirement`.\n current-user currentUser\n send-account-deletion-email sendAccountDeletionEmail\n sign-out signOut\n accept-database-transfer acceptDatabaseTransfer\n cancel-database-transfer cancelDatabaseTransfer\n reject-database-transfer rejectDatabaseTransfer\n submit-invite-code submitInviteCode\n submit-org-invite-code submitOrgInviteCode\n check-password checkPassword\n confirm-delete-account confirmDeleteAccount\n set-password setPassword\n verify-email verifyEmail\n freeze-objects freezeObjects\n init-empty-repo initEmptyRepo\n construct-blueprint Executes a blueprint definition by delegating to provision_* procedures. Creates a blueprint_construction record to track the attempt. Five phases: (1) provision_table() for each table with all nodes[], fields[], policies[], grants, and table-level indexes/fts/unique_constraints in a single call, (2) provision_relation() for each relation, (3) provision_index() for top-level indexes, (4) provision_full_text_search() for top-level FTS, (5) provision_unique_constraint() for top-level unique constraints. Tables are identified by table_name with optional per-table schema_name. Relations use $type for relation_type with source_table/target_table. Returns the construction record ID on success, NULL on failure.\n reset-password resetPassword\n remove-node-at-path removeNodeAtPath\n copy-template-to-blueprint Creates a new blueprint by copying a template definition. Checks visibility: owners can always copy their own templates, others require public visibility. Increments the template copy_count. Returns the new blueprint ID.\n bootstrap-user bootstrapUser\n set-field-order setFieldOrder\n provision-unique-constraint Creates a unique constraint on a table. Accepts a jsonb definition with columns (array of field names). Graceful: skips if the exact same unique constraint already exists.\n provision-full-text-search Creates a full-text search configuration on a table. Accepts a jsonb definition with field (tsvector column name) and sources (array of {field, weight, lang}). Graceful: skips if FTS config already exists for the same (table_id, field_id). Returns the fts_id.\n provision-index Creates an index on a table. Accepts a jsonb definition with columns (array of names or single column string), access_method (default BTREE), is_unique, op_classes, options, and name (auto-generated if omitted). Graceful: skips if an index with the same (table_id, field_ids, access_method) already exists. Returns the index_id.\n set-data-at-path setDataAtPath\n set-props-and-commit setPropsAndCommit\n provision-database-with-user provisionDatabaseWithUser\n insert-node-at-path insertNodeAtPath\n update-node-at-path updateNodeAtPath\n set-and-commit setAndCommit\n provision-relation Composable relation provisioning: creates FK fields, indexes, unique constraints, and junction tables depending on the relation_type. Supports RelationBelongsTo, RelationHasOne, RelationHasMany, and RelationManyToMany. ManyToMany uses provision_table() internally for junction table creation with full node/grant/policy support. All operations are graceful (skip existing). Returns (out_field_id, out_junction_table_id, out_source_field_id, out_target_field_id).\n apply-rls applyRls\n sign-in-one-time-token signInOneTimeToken\n create-user-database Creates a new user database with all required modules, permissions, and RLS policies.\n\nParameters:\n - database_name: Name for the new database (required)\n - owner_id: UUID of the owner user (required)\n - include_invites: Include invite system (default: true)\n - include_groups: Include group-level memberships (default: false)\n - include_levels: Include levels/achievements (default: false)\n - bitlen: Bit length for permission masks (default: 64)\n - tokens_expiration: Token expiration interval (default: 30 days)\n\nReturns the database_id UUID of the newly created database.\n\nExample usage:\n SELECT metaschema_public.create_user_database('my_app', 'a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11'::uuid);\n SELECT metaschema_public.create_user_database('my_app', 'a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11'::uuid, true, true); -- with invites and groups\n\n extend-token-expires extendTokenExpires\n sign-in signIn\n sign-up signUp\n one-time-token oneTimeToken\n provision-table Composable table provisioning: creates or finds a table, then creates fields (so Data* modules can reference them), applies N nodes (Data* modules), enables RLS, creates grants, creates N policies, and optionally creates table-level indexes/full_text_searches/unique_constraints. All operations are graceful (skip existing). Accepts multiple nodes and multiple policies per call, unlike secure_table_provision which is limited to one of each. Returns (out_table_id, out_fields).\n send-verification-email sendVerificationEmail\n forgot-password forgotPassword\n verify-password verifyPassword\n verify-totp verifyTotp\n\n --help, -h Show this help message\n --version, -v Show version\n";
360
358
  const commands = async (argv, prompter, options) => {
361
359
  if (argv.help || argv.h) {
362
360
  console.log(usage);
@@ -91,19 +91,18 @@ export declare function getClient(contextName?: string): {
91
91
  orgInvite: import("../orm").OrgInviteModel;
92
92
  orgClaimedInvite: import("../orm").OrgClaimedInviteModel;
93
93
  auditLog: import("../orm").AuditLogModel;
94
+ appPermissionDefault: import("../orm").AppPermissionDefaultModel;
94
95
  ref: import("../orm").RefModel;
95
96
  store: import("../orm").StoreModel;
96
- appPermissionDefault: import("../orm").AppPermissionDefaultModel;
97
97
  roleType: import("../orm").RoleTypeModel;
98
+ migrateFile: import("../orm").MigrateFileModel;
98
99
  appLimitDefault: import("../orm").AppLimitDefaultModel;
99
100
  orgLimitDefault: import("../orm").OrgLimitDefaultModel;
100
- migrateFile: import("../orm").MigrateFileModel;
101
101
  membershipType: import("../orm").MembershipTypeModel;
102
- commit: import("../orm").CommitModel;
103
102
  appMembershipDefault: import("../orm").AppMembershipDefaultModel;
104
- rlsModule: import("../orm").RlsModuleModel;
105
- nodeTypeRegistry: import("../orm").NodeTypeRegistryModel;
103
+ commit: import("../orm").CommitModel;
106
104
  orgMembershipDefault: import("../orm").OrgMembershipDefaultModel;
105
+ rlsModule: import("../orm").RlsModuleModel;
107
106
  sqlAction: import("../orm").SqlActionModel;
108
107
  user: import("../orm").UserModel;
109
108
  astMigration: import("../orm").AstMigrationModel;
@@ -90,19 +90,18 @@ import { ClaimedInviteModel } from './models/claimedInvite';
90
90
  import { OrgInviteModel } from './models/orgInvite';
91
91
  import { OrgClaimedInviteModel } from './models/orgClaimedInvite';
92
92
  import { AuditLogModel } from './models/auditLog';
93
+ import { AppPermissionDefaultModel } from './models/appPermissionDefault';
93
94
  import { RefModel } from './models/ref';
94
95
  import { StoreModel } from './models/store';
95
- import { AppPermissionDefaultModel } from './models/appPermissionDefault';
96
96
  import { RoleTypeModel } from './models/roleType';
97
+ import { MigrateFileModel } from './models/migrateFile';
97
98
  import { AppLimitDefaultModel } from './models/appLimitDefault';
98
99
  import { OrgLimitDefaultModel } from './models/orgLimitDefault';
99
- import { MigrateFileModel } from './models/migrateFile';
100
100
  import { MembershipTypeModel } from './models/membershipType';
101
- import { CommitModel } from './models/commit';
102
101
  import { AppMembershipDefaultModel } from './models/appMembershipDefault';
103
- import { RlsModuleModel } from './models/rlsModule';
104
- import { NodeTypeRegistryModel } from './models/nodeTypeRegistry';
102
+ import { CommitModel } from './models/commit';
105
103
  import { OrgMembershipDefaultModel } from './models/orgMembershipDefault';
104
+ import { RlsModuleModel } from './models/rlsModule';
106
105
  import { SqlActionModel } from './models/sqlAction';
107
106
  import { UserModel } from './models/user';
108
107
  import { AstMigrationModel } from './models/astMigration';
@@ -231,19 +230,18 @@ export declare function createClient(config: OrmClientConfig): {
231
230
  orgInvite: OrgInviteModel;
232
231
  orgClaimedInvite: OrgClaimedInviteModel;
233
232
  auditLog: AuditLogModel;
233
+ appPermissionDefault: AppPermissionDefaultModel;
234
234
  ref: RefModel;
235
235
  store: StoreModel;
236
- appPermissionDefault: AppPermissionDefaultModel;
237
236
  roleType: RoleTypeModel;
237
+ migrateFile: MigrateFileModel;
238
238
  appLimitDefault: AppLimitDefaultModel;
239
239
  orgLimitDefault: OrgLimitDefaultModel;
240
- migrateFile: MigrateFileModel;
241
240
  membershipType: MembershipTypeModel;
242
- commit: CommitModel;
243
241
  appMembershipDefault: AppMembershipDefaultModel;
244
- rlsModule: RlsModuleModel;
245
- nodeTypeRegistry: NodeTypeRegistryModel;
242
+ commit: CommitModel;
246
243
  orgMembershipDefault: OrgMembershipDefaultModel;
244
+ rlsModule: RlsModuleModel;
247
245
  sqlAction: SqlActionModel;
248
246
  user: UserModel;
249
247
  astMigration: AstMigrationModel;
@@ -113,19 +113,18 @@ const claimedInvite_1 = require("./models/claimedInvite");
113
113
  const orgInvite_1 = require("./models/orgInvite");
114
114
  const orgClaimedInvite_1 = require("./models/orgClaimedInvite");
115
115
  const auditLog_1 = require("./models/auditLog");
116
+ const appPermissionDefault_1 = require("./models/appPermissionDefault");
116
117
  const ref_1 = require("./models/ref");
117
118
  const store_1 = require("./models/store");
118
- const appPermissionDefault_1 = require("./models/appPermissionDefault");
119
119
  const roleType_1 = require("./models/roleType");
120
+ const migrateFile_1 = require("./models/migrateFile");
120
121
  const appLimitDefault_1 = require("./models/appLimitDefault");
121
122
  const orgLimitDefault_1 = require("./models/orgLimitDefault");
122
- const migrateFile_1 = require("./models/migrateFile");
123
123
  const membershipType_1 = require("./models/membershipType");
124
- const commit_1 = require("./models/commit");
125
124
  const appMembershipDefault_1 = require("./models/appMembershipDefault");
126
- const rlsModule_1 = require("./models/rlsModule");
127
- const nodeTypeRegistry_1 = require("./models/nodeTypeRegistry");
125
+ const commit_1 = require("./models/commit");
128
126
  const orgMembershipDefault_1 = require("./models/orgMembershipDefault");
127
+ const rlsModule_1 = require("./models/rlsModule");
129
128
  const sqlAction_1 = require("./models/sqlAction");
130
129
  const user_1 = require("./models/user");
131
130
  const astMigration_1 = require("./models/astMigration");
@@ -262,19 +261,18 @@ function createClient(config) {
262
261
  orgInvite: new orgInvite_1.OrgInviteModel(client),
263
262
  orgClaimedInvite: new orgClaimedInvite_1.OrgClaimedInviteModel(client),
264
263
  auditLog: new auditLog_1.AuditLogModel(client),
264
+ appPermissionDefault: new appPermissionDefault_1.AppPermissionDefaultModel(client),
265
265
  ref: new ref_1.RefModel(client),
266
266
  store: new store_1.StoreModel(client),
267
- appPermissionDefault: new appPermissionDefault_1.AppPermissionDefaultModel(client),
268
267
  roleType: new roleType_1.RoleTypeModel(client),
268
+ migrateFile: new migrateFile_1.MigrateFileModel(client),
269
269
  appLimitDefault: new appLimitDefault_1.AppLimitDefaultModel(client),
270
270
  orgLimitDefault: new orgLimitDefault_1.OrgLimitDefaultModel(client),
271
- migrateFile: new migrateFile_1.MigrateFileModel(client),
272
271
  membershipType: new membershipType_1.MembershipTypeModel(client),
273
- commit: new commit_1.CommitModel(client),
274
272
  appMembershipDefault: new appMembershipDefault_1.AppMembershipDefaultModel(client),
275
- rlsModule: new rlsModule_1.RlsModuleModel(client),
276
- nodeTypeRegistry: new nodeTypeRegistry_1.NodeTypeRegistryModel(client),
273
+ commit: new commit_1.CommitModel(client),
277
274
  orgMembershipDefault: new orgMembershipDefault_1.OrgMembershipDefaultModel(client),
275
+ rlsModule: new rlsModule_1.RlsModuleModel(client),
278
276
  sqlAction: new sqlAction_1.SqlActionModel(client),
279
277
  user: new user_1.UserModel(client),
280
278
  astMigration: new astMigration_1.AstMigrationModel(client),