@proteinjs/db 1.48.0 → 1.49.1

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 (102) hide show
  1. package/.eslintrc.js +1 -1
  2. package/.prettierignore +2 -1
  3. package/CHANGELOG.md +31 -0
  4. package/dist/generated/index.d.ts.map +1 -1
  5. package/dist/generated/index.js +1 -3
  6. package/dist/generated/index.js.map +1 -1
  7. package/dist/generated/test/index.d.ts.map +1 -1
  8. package/dist/generated/test/index.js +1 -3
  9. package/dist/generated/test/index.js.map +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +4 -5
  13. package/dist/index.js.map +1 -1
  14. package/dist/src/Db.js +2 -2
  15. package/dist/src/Db.js.map +1 -1
  16. package/dist/src/MigrationRunner.js +2 -2
  17. package/dist/src/MigrationRunner.js.map +1 -1
  18. package/dist/src/Table.d.ts +16 -1
  19. package/dist/src/Table.d.ts.map +1 -1
  20. package/dist/src/Table.js +14 -0
  21. package/dist/src/Table.js.map +1 -1
  22. package/dist/src/auth/TableAuth.d.ts +4 -0
  23. package/dist/src/auth/TableAuth.d.ts.map +1 -1
  24. package/dist/src/auth/TableAuth.js +12 -0
  25. package/dist/src/auth/TableAuth.js.map +1 -1
  26. package/dist/src/auth/TableServiceAuth.d.ts.map +1 -1
  27. package/dist/src/auth/TableServiceAuth.js +5 -0
  28. package/dist/src/auth/TableServiceAuth.js.map +1 -1
  29. package/dist/src/schema/SchemaOperations.d.ts +4 -3
  30. package/dist/src/schema/SchemaOperations.d.ts.map +1 -1
  31. package/dist/src/schema/TableManager.d.ts +24 -6
  32. package/dist/src/schema/TableManager.d.ts.map +1 -1
  33. package/dist/src/schema/TableManager.js +93 -26
  34. package/dist/src/schema/TableManager.js.map +1 -1
  35. package/dist/src/source/SourceRecord.d.ts +2 -2
  36. package/dist/src/source/{SourceRecordLoader.d.ts → SourceRecordSyncRunner.d.ts} +15 -7
  37. package/dist/src/source/SourceRecordSyncRunner.d.ts.map +1 -0
  38. package/dist/src/source/{SourceRecordLoader.js → SourceRecordSyncRunner.js} +46 -31
  39. package/dist/src/source/SourceRecordSyncRunner.js.map +1 -0
  40. package/dist/src/tables/MigrationTable.d.ts +10 -2
  41. package/dist/src/tables/MigrationTable.d.ts.map +1 -1
  42. package/dist/src/tables/MigrationTable.js +12 -4
  43. package/dist/src/tables/MigrationTable.js.map +1 -1
  44. package/dist/test/DurableTable.test.d.ts +2 -0
  45. package/dist/test/DurableTable.test.d.ts.map +1 -0
  46. package/dist/test/DurableTable.test.js +172 -0
  47. package/dist/test/DurableTable.test.js.map +1 -0
  48. package/dist/test/MigrationAuth.test.js +12 -9
  49. package/dist/test/MigrationAuth.test.js.map +1 -1
  50. package/dist/test/SchemaReconcileLines.test.d.ts +2 -0
  51. package/dist/test/SchemaReconcileLines.test.d.ts.map +1 -0
  52. package/dist/test/SchemaReconcileLines.test.js +176 -0
  53. package/dist/test/SchemaReconcileLines.test.js.map +1 -0
  54. package/dist/test/SourceRecordLoaderQualifiedName.test.d.ts +2 -0
  55. package/dist/test/SourceRecordLoaderQualifiedName.test.d.ts.map +1 -0
  56. package/dist/test/SourceRecordLoaderQualifiedName.test.js +79 -0
  57. package/dist/test/SourceRecordLoaderQualifiedName.test.js.map +1 -0
  58. package/dist/test/SourceRecordSyncRunner.test.d.ts +2 -0
  59. package/dist/test/SourceRecordSyncRunner.test.d.ts.map +1 -0
  60. package/dist/test/{SourceRecordLoader.test.js → SourceRecordSyncRunner.test.js} +63 -7
  61. package/dist/test/SourceRecordSyncRunner.test.js.map +1 -0
  62. package/dist/test/TableManagerCreateOrder.test.d.ts +2 -0
  63. package/dist/test/TableManagerCreateOrder.test.d.ts.map +1 -0
  64. package/dist/test/TableManagerCreateOrder.test.js +66 -0
  65. package/dist/test/TableManagerCreateOrder.test.js.map +1 -0
  66. package/dist/test/reusable/CrudTests.d.ts.map +1 -1
  67. package/dist/test/reusable/CrudTests.js +72 -0
  68. package/dist/test/reusable/CrudTests.js.map +1 -1
  69. package/dist/test/reusable/SourceRecordSyncTests.d.ts.map +1 -1
  70. package/dist/test/reusable/SourceRecordSyncTests.js +3 -5
  71. package/dist/test/reusable/SourceRecordSyncTests.js.map +1 -1
  72. package/dist/test/reusable/TableManagerTests.d.ts.map +1 -1
  73. package/dist/test/reusable/TableManagerTests.js +180 -0
  74. package/dist/test/reusable/TableManagerTests.js.map +1 -1
  75. package/generated/index.ts +20 -19
  76. package/generated/test/index.ts +54 -53
  77. package/index.ts +3 -4
  78. package/package.json +5 -5
  79. package/src/Db.ts +2 -2
  80. package/src/MigrationRunner.ts +2 -2
  81. package/src/Table.ts +16 -1
  82. package/src/auth/TableAuth.ts +14 -0
  83. package/src/auth/TableServiceAuth.ts +6 -1
  84. package/src/schema/SchemaOperations.ts +4 -3
  85. package/src/schema/TableManager.ts +84 -26
  86. package/src/source/SourceRecord.ts +2 -2
  87. package/src/source/{SourceRecordLoader.ts → SourceRecordSyncRunner.ts} +31 -13
  88. package/src/tables/MigrationTable.ts +12 -4
  89. package/test/DurableTable.test.ts +156 -0
  90. package/test/MigrationAuth.test.ts +7 -5
  91. package/test/SchemaReconcileLines.test.ts +127 -0
  92. package/test/SourceRecordLoaderQualifiedName.test.ts +63 -0
  93. package/test/{SourceRecordLoader.test.ts → SourceRecordSyncRunner.test.ts} +75 -8
  94. package/test/TableManagerCreateOrder.test.ts +78 -0
  95. package/test/reusable/CrudTests.ts +50 -0
  96. package/test/reusable/SourceRecordSyncTests.ts +3 -5
  97. package/test/reusable/TableManagerTests.ts +95 -0
  98. package/dist/src/source/SourceRecordLoader.d.ts.map +0 -1
  99. package/dist/src/source/SourceRecordLoader.js.map +0 -1
  100. package/dist/test/SourceRecordLoader.test.d.ts +0 -2
  101. package/dist/test/SourceRecordLoader.test.d.ts.map +0 -1
  102. package/dist/test/SourceRecordLoader.test.js.map +0 -1
@@ -7,10 +7,11 @@ import '@proteinjs/server-api';
7
7
  import '@proteinjs/service';
8
8
  import '@proteinjs/user-auth';
9
9
 
10
+
10
11
  /** Generate Source Graph */
11
12
 
12
- const sourceGraph =
13
- '{"options":{"directed":true,"multigraph":false,"compound":false},"nodes":[{"v":"@proteinjs/db/DbDriverQueryStatementConfig","value":{"packageName":"@proteinjs/db","name":"DbDriverQueryStatementConfig","filePath":"src/Db.ts","qualifiedName":"@proteinjs/db/DbDriverQueryStatementConfig","typeParameters":[],"directParents":[{"packageName":"@proteinjs/db-query","name":"ParameterizationConfig","filePath":null,"qualifiedName":"@proteinjs/db-query/ParameterizationConfig","typeParameters":[],"directParents":null},{"packageName":"@proteinjs/db","name":"{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n handleCaseSensitivity: (tableName: string, columnName: string, caseSensitive: boolean) => string;\\n /** Driver SQL for truncating a datetime column to a bucket unit (`QueryBuilder.timeBucket`). */\\n dateTruncExpression?: (resolvedColumnName: string, unit: \'day\' | \'hour\' | \'minute\') => string;\\n /** Driver SQL standing in for a bound param\'s placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}","filePath":null,"qualifiedName":"@proteinjs/db/{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n handleCaseSensitivity: (tableName: string, columnName: string, caseSensitive: boolean) => string;\\n /** Driver SQL for truncating a datetime column to a bucket unit (`QueryBuilder.timeBucket`). */\\n dateTruncExpression?: (resolvedColumnName: string, unit: \'day\' | \'hour\' | \'minute\') => string;\\n /** Driver SQL standing in for a bound param\'s placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}","typeParameters":[],"directParents":null}],"sourceType":1}},{"v":"@proteinjs/db-query/ParameterizationConfig"},{"v":"@proteinjs/db/DbDriverDmlStatementConfig","value":{"packageName":"@proteinjs/db","name":"DbDriverDmlStatementConfig","filePath":"src/Db.ts","qualifiedName":"@proteinjs/db/DbDriverDmlStatementConfig","typeParameters":[],"directParents":[{"packageName":"@proteinjs/db-query","name":"ParameterizationConfig","filePath":null,"qualifiedName":"@proteinjs/db-query/ParameterizationConfig","typeParameters":[],"directParents":null},{"packageName":"@proteinjs/db","name":"{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n /** Driver SQL standing in for a bound param\'s placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}","filePath":null,"qualifiedName":"@proteinjs/db/{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n /** Driver SQL standing in for a bound param\'s placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}","typeParameters":[],"directParents":null}],"sourceType":1}},{"v":"@proteinjs/db/DefaultDbDriverFactory","value":{"packageName":"@proteinjs/db","name":"DefaultDbDriverFactory","filePath":"src/Db.ts","qualifiedName":"@proteinjs/db/DefaultDbDriverFactory","properties":[],"methods":[{"name":"getDbDriver","returnType":{"packageName":"@proteinjs/db","name":"DbDriver","filePath":null,"qualifiedName":"@proteinjs/db/DbDriver","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[]}],"typeParameters":[],"directParents":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"@proteinjs/reflection/Loadable"},{"v":"@proteinjs/db/Db","value":{"packageName":"@proteinjs/db","name":"Db","filePath":"src/Db.ts","qualifiedName":"@proteinjs/db/Db","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"dbDriver","type":{"packageName":"@proteinjs/db","name":"DbDriver","filePath":null,"qualifiedName":"@proteinjs/db/DbDriver","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"getTable","type":{"packageName":"","name":"(tableName: string) => Table<any>","filePath":null,"qualifiedName":"/(tableName: string) => Table<any>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"statementConfigFactory","type":{"packageName":"@proteinjs/db","name":"StatementConfigFactory","filePath":null,"qualifiedName":"@proteinjs/db/StatementConfigFactory","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"auth","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"tableWatcherRunner","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"transactionContextFactory","type":{"packageName":"@proteinjs/db","name":"DefaultTransactionContextFactory","filePath":null,"qualifiedName":"@proteinjs/db/DefaultTransactionContextFactory","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"serviceMetadata","type":{"packageName":"","name":"Service[\'serviceMetadata\']","filePath":null,"qualifiedName":"/Service[\'serviceMetadata\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"runAsSystem","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"getDefaultDbDriver","returnType":{"packageName":"@proteinjs/db","name":"DbDriver","filePath":null,"qualifiedName":"@proteinjs/db/DbDriver","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"public","parameters":[]},{"name":"getDefaultTransactionContextFactory","returnType":{"packageName":"@proteinjs/db","name":"DefaultTransactionContextFactory","filePath":null,"qualifiedName":"@proteinjs/db/DefaultTransactionContextFactory","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"init","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"tableExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}}]},{"name":"get","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null}}]},{"name":"insert","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Omit<T, keyof R>","filePath":null,"qualifiedName":"/Omit<T, keyof R>","typeParameters":null,"directParents":null}}]},{"name":"update","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"updateArrayMembership","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"update","type":{"packageName":"@proteinjs/db","name":"ArrayMembershipUpdate","filePath":null,"qualifiedName":"@proteinjs/db/ArrayMembershipUpdate","typeParameters":null,"directParents":null}}]},{"name":"updatePreserving","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"preserve","type":{"packageName":"","name":"PreservedPath[]","filePath":null,"qualifiedName":"/PreservedPath[]","typeParameters":null,"directParents":null}}]},{"name":"delete","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"runColumnBeforeDeletes","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"recordsToDelete","type":{"packageName":"","name":"Record[]","filePath":null,"qualifiedName":"/Record[]","typeParameters":null,"directParents":null}}]},{"name":"runCascadeDeletions","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"deletedRecords","type":{"packageName":"","name":"Record[]","filePath":null,"qualifiedName":"/Record[]","typeParameters":null,"directParents":null}}]},{"name":"runColumnReverseCascadeDeletions","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"deletedRecords","type":{"packageName":"","name":"Record[]","filePath":null,"qualifiedName":"/Record[]","typeParameters":null,"directParents":null}}]},{"name":"reverseDeleteReferenceArrayHolders","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"referencingTable","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"columnPropertyName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"deletedIds","type":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null}},{"name":"deletedIdSet","type":{"packageName":"","name":"Set<string>","filePath":null,"qualifiedName":"/Set<string>","typeParameters":null,"directParents":null}}]},{"name":"query","returnType":{"packageName":"","name":"Promise<T[]>","filePath":null,"qualifiedName":"/Promise<T[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null}}]},{"name":"_query","returnType":{"packageName":"","name":"Promise<T[]>","filePath":null,"qualifiedName":"/Promise<T[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"@proteinjs/db-query","name":"QueryBuilder","filePath":null,"qualifiedName":"@proteinjs/db-query/QueryBuilder","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null}}]},{"name":"preloadReferences","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"records","type":{"packageName":"","name":"any[]","filePath":null,"qualifiedName":"/any[]","typeParameters":null,"directParents":null}},{"name":"queryOptions","type":{"packageName":"","name":"QueryOptions<any>","filePath":null,"qualifiedName":"/QueryOptions<any>","typeParameters":null,"directParents":null}}]},{"name":"getRowCount","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"queryAggregates","returnType":{"packageName":"","name":"Promise<{ [key: string]: unknown }[]>","filePath":null,"qualifiedName":"/Promise<{ [key: string]: unknown }[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]},{"name":"addColumnQueries","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}},{"name":"operation","type":{"packageName":"","name":"\'read\' | \'write\' | \'delete\'","filePath":null,"qualifiedName":"/\'read\' | \'write\' | \'delete\'","typeParameters":null,"directParents":null}}]},{"name":"addColumnInsertHooks","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}}]},{"name":"runColumnAfterInsertHooks","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}}]},{"name":"singleRowIdTarget","returnType":{"packageName":"","name":"string | undefined","filePath":null,"qualifiedName":"/string | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"runZeroRowFilteredWriteHooks","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"operation","type":{"packageName":"","name":"\'write\' | \'delete\'","filePath":null,"qualifiedName":"/\'write\' | \'delete\'","typeParameters":null,"directParents":null}}]},{"name":"runTransaction","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"fn","type":{"packageName":"","name":"() => Promise<T>","filePath":null,"qualifiedName":"/() => Promise<T>","typeParameters":null,"directParents":null}}]},{"name":"runAfterCommit","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"hook","type":{"packageName":"@proteinjs/db","name":"PostCommitHook","filePath":null,"qualifiedName":"@proteinjs/db/PostCommitHook","typeParameters":null,"directParents":null}}]},{"name":"encryptionWriteContext","returnType":{"packageName":"","name":"Promise<{ keyOwner: string } | undefined>","filePath":null,"qualifiedName":"/Promise<{ keyOwner: string } | undefined>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}}]},{"name":"updateTouchesEncryptedColumns","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}}]},{"name":"updateEncrypted","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"recordCopy","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]},{"name":"deleteEncryptionTokenRows","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"deletedIds","type":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null}}]},{"name":"newSystemDb","returnType":{"packageName":"","name":"Db<any>","filePath":null,"qualifiedName":"/Db<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"newSelfWrapDb","returnType":{"packageName":"","name":"Db<R>","filePath":null,"qualifiedName":"/Db<R>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"transactionForDriver","returnType":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"chunk","returnType":{"packageName":"","name":"T[][]","filePath":null,"qualifiedName":"/T[][]","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"arr","type":{"packageName":"","name":"T[]","filePath":null,"qualifiedName":"/T[]","typeParameters":null,"directParents":null}},{"name":"size","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}}]}],"typeParameters":["/R extends Record = Record"],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"DbService","filePath":null,"qualifiedName":"@proteinjs/db/DbService","properties":[],"methods":[],"typeParameters":["/R"],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/DbService","value":{"packageName":"@proteinjs/db","name":"DbService","filePath":"src/services/DbService.ts","qualifiedName":"@proteinjs/db/DbService","properties":[],"methods":[{"name":"tableExists","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}}]},{"name":"get","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null}}]},{"name":"insert","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Omit<T, keyof R>","filePath":null,"qualifiedName":"/Omit<T, keyof R>","typeParameters":null,"directParents":null}}]},{"name":"update","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"updateArrayMembership","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"update","type":{"packageName":"@proteinjs/db","name":"ArrayMembershipUpdate","filePath":null,"qualifiedName":"@proteinjs/db/ArrayMembershipUpdate","typeParameters":null,"directParents":null}}]},{"name":"updatePreserving","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"preserve","type":{"packageName":"","name":"PreservedPath[]","filePath":null,"qualifiedName":"/PreservedPath[]","typeParameters":null,"directParents":null}}]},{"name":"delete","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]},{"name":"query","returnType":{"packageName":"","name":"Promise<T[]>","filePath":null,"qualifiedName":"/Promise<T[]>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null}}]},{"name":"getRowCount","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null}},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null}}]}],"typeParameters":["/R extends Record = Record"],"directParents":[{"packageName":"@proteinjs/service","name":"Service","filePath":null,"qualifiedName":"@proteinjs/service/Service","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"@proteinjs/db/DbInitStartupTask","value":{"packageName":"@proteinjs/db","name":"DbInitStartupTask","filePath":"src/DbInitStartupTask.ts","qualifiedName":"@proteinjs/db/DbInitStartupTask","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"name","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"when","type":{"packageName":"","name":"StartupTask[\'when\']","filePath":null,"qualifiedName":"/StartupTask[\'when\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"run","returnType":null,"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/server-api","name":"StartupTask","filePath":null,"qualifiedName":"@proteinjs/server-api/StartupTask","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/server-api/StartupTask"},{"v":"@proteinjs/db/MigrationRunner","value":{"packageName":"@proteinjs/db","name":"MigrationRunner","filePath":"src/MigrationRunner.ts","qualifiedName":"@proteinjs/db/MigrationRunner","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"serviceMetadata","type":{"packageName":"","name":"Service[\'serviceMetadata\']","filePath":null,"qualifiedName":"/Service[\'serviceMetadata\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"runMigration","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"ensureMigrationRun","returnType":{"packageName":"","name":"Promise<Migration>","filePath":null,"qualifiedName":"/Promise<Migration>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"runPreSchemaSyncMigrations","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableManager","type":{"packageName":"@proteinjs/db","name":"TableManager","filePath":null,"qualifiedName":"@proteinjs/db/TableManager","typeParameters":null,"directParents":null}}]},{"name":"runPendingMigrations","returnType":{"packageName":"","name":"Promise<MigrationSeriesSummary>","filePath":null,"qualifiedName":"/Promise<MigrationSeriesSummary>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"runAndRecord","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"migrationTable","type":{"packageName":"","name":"Table<Migration>","filePath":null,"qualifiedName":"/Table<Migration>","typeParameters":null,"directParents":null}},{"name":"migration","type":{"packageName":"@proteinjs/db","name":"Migration","filePath":null,"qualifiedName":"@proteinjs/db/Migration","typeParameters":null,"directParents":null}},{"name":"getRunDb","type":{"packageName":"","name":"() => Db","filePath":null,"qualifiedName":"/() => Db","typeParameters":null,"directParents":null}}]},{"name":"definedFields","returnType":{"packageName":"","name":"Partial<Migration>","filePath":null,"qualifiedName":"/Partial<Migration>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"migration","type":{"packageName":"@proteinjs/db","name":"Migration","filePath":null,"qualifiedName":"@proteinjs/db/Migration","typeParameters":null,"directParents":null}}]},{"name":"resolveMigration","returnType":{"packageName":"@proteinjs/db","name":"Migration","filePath":null,"qualifiedName":"@proteinjs/db/Migration","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"migrationTable","type":{"packageName":"","name":"Table<Migration>","filePath":null,"qualifiedName":"/Table<Migration>","typeParameters":null,"directParents":null}},{"name":"id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"duration","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"start","type":{"packageName":"@proteinjs/db","name":"Moment","filePath":null,"qualifiedName":"@proteinjs/db/Moment","typeParameters":null,"directParents":null}},{"name":"end","type":{"packageName":"@proteinjs/db","name":"Moment","filePath":null,"qualifiedName":"@proteinjs/db/Moment","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"MigrationRunnerService","filePath":null,"qualifiedName":"@proteinjs/db/MigrationRunnerService","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/MigrationRunnerService","value":{"packageName":"@proteinjs/db","name":"MigrationRunnerService","filePath":"src/services/MigrationRunnerService.ts","qualifiedName":"@proteinjs/db/MigrationRunnerService","properties":[],"methods":[{"name":"runMigration","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParents":[{"packageName":"@proteinjs/service","name":"Service","filePath":null,"qualifiedName":"@proteinjs/service/Service","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"/Error"},{"v":"/AsyncIterable"},{"v":"/(\\n | { refKind: \'reference\' | \'referenceArray\' }\\n | { refKind: \'dynamicReference\'; dynamicRefTableColumnPropertyName: string }\\n)"},{"v":"@proteinjs/db/Table","value":{"packageName":"@proteinjs/db","name":"Table","filePath":"src/Table.ts","qualifiedName":"@proteinjs/db/Table","isAbstract":true,"isStatic":false,"visibility":"public","properties":[{"name":"__serializerId","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"name","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"columns","type":{"packageName":"","name":"Columns<T>","filePath":null,"qualifiedName":"/Columns<T>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"indexes","type":{"packageName":"@proteinjs/db","name":"{ columns: (keyof T)[]; name?: string; unique?: boolean }[]","filePath":null,"qualifiedName":"@proteinjs/db/{ columns: (keyof T)[]; name?: string; unique?: boolean }[]","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"cascadeDeleteReferences","type":{"packageName":"","name":"() => { table: string; referenceColumn: string }[]","filePath":null,"qualifiedName":"/() => { table: string; referenceColumn: string }[]","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"sourceRecordOptions","type":{"packageName":"","name":"SourceRecordOptions<T>","filePath":null,"qualifiedName":"/SourceRecordOptions<T>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"ui","type":{"packageName":"@proteinjs/db","name":"{\\n recordTable?: {\\n /**\\n * The columns rendered as the record table\'s row columns, in this order. `created` and\\n * `updated` are appended automatically (the record family\'s shared face) unless already\\n * listed. Undeclared tables get the meaningful-data default pick\\n * (db-ui `defaultRecordTableColumns`). Declare when the default pick misses a column a\\n * human scans for (e.g. the migration ledger\'s `duration`) or surfaces one that has no\\n * business in a row scan (e.g. an invite\'s redeemable `token` \\u2014 row hygiene; the record\\n * form still carries the full record).\\n */\\n columns?: (keyof T & string)[];\\n /**\\n * The record table\'s default ordering (the sort its default loader applies before any\\n * user interaction). Undeclared tables keep the generic `updated` descending. Declare\\n * when the rows have a natural reading order the shared face can\'t know \\u2014 e.g. the\\n * migration ledger reads most-recently-run first, never-run rows last.\\n */\\n sort?: SortCriteria<T>[];\\n /**\\n * A table whose rows have their OWN page instead of the generic record form: the record table\\n * links each row here (replacing the generic form link), draws no New button and no selection\\n * Delete button, and the generic form page replace-navigates stale\\n * `/record/form?table=<name>&record=<id>` URLs to this link. Built from the id alone so the\\n * redirect never needs a row load.\\n */\\n recordLink?: (row: Pick<T, \'id\'>) => string;\\n /**\\n * The list actions the record table\'s title-row seat carries (see `RecordTableAction`).\\n * Undeclared, the seat derives the generic pair from the auth doors \\u2014 create from the\\n * insert doors, delete-on-selection from the delete doors \\u2014 exactly as every table did\\n * before this declaration existed. A declared entry CONFIGURES the act of its kind (door\\n * and/or label); kinds left undeclared keep the derivation. The seat, not the table, owns\\n * placement: every declared act renders in the same seat on desktop and phone.\\n */\\n actions?: RecordTableAction[];\\n };\\n }","filePath":null,"qualifiedName":"@proteinjs/db/{\\n recordTable?: {\\n /**\\n * The columns rendered as the record table\'s row columns, in this order. `created` and\\n * `updated` are appended automatically (the record family\'s shared face) unless already\\n * listed. Undeclared tables get the meaningful-data default pick\\n * (db-ui `defaultRecordTableColumns`). Declare when the default pick misses a column a\\n * human scans for (e.g. the migration ledger\'s `duration`) or surfaces one that has no\\n * business in a row scan (e.g. an invite\'s redeemable `token` \\u2014 row hygiene; the record\\n * form still carries the full record).\\n */\\n columns?: (keyof T & string)[];\\n /**\\n * The record table\'s default ordering (the sort its default loader applies before any\\n * user interaction). Undeclared tables keep the generic `updated` descending. Declare\\n * when the rows have a natural reading order the shared face can\'t know \\u2014 e.g. the\\n * migration ledger reads most-recently-run first, never-run rows last.\\n */\\n sort?: SortCriteria<T>[];\\n /**\\n * A table whose rows have their OWN page instead of the generic record form: the record table\\n * links each row here (replacing the generic form link), draws no New button and no selection\\n * Delete button, and the generic form page replace-navigates stale\\n * `/record/form?table=<name>&record=<id>` URLs to this link. Built from the id alone so the\\n * redirect never needs a row load.\\n */\\n recordLink?: (row: Pick<T, \'id\'>) => string;\\n /**\\n * The list actions the record table\'s title-row seat carries (see `RecordTableAction`).\\n * Undeclared, the seat derives the generic pair from the auth doors \\u2014 create from the\\n * insert doors, delete-on-selection from the delete doors \\u2014 exactly as every table did\\n * before this declaration existed. A declared entry CONFIGURES the act of its kind (door\\n * and/or label); kinds left undeclared keep the derivation. The seat, not the table, owns\\n * placement: every declared act renders in the same seat on desktop and phone.\\n */\\n actions?: RecordTableAction[];\\n };\\n }","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"auth","type":{"packageName":"@proteinjs/db","name":"{\\n db?: TableOperationsAuth;\\n service?: TableOperationsAuth;\\n /**\\n * Columns that can never be WRITTEN through the generic `DbService` RPC path: a service-path\\n * insert/update that sets one of these to a non-null value is rejected with a clean\\n * `ServiceError` before the operation runs (see `TableServiceAuth`). Server-side code using\\n * `Db` directly is unaffected. Use when a table must stay client-writable overall but a\\n * column\'s writes are reserved to server logic \\u2014 e.g. `chat.parent`, which only\\n * `FlowConversation.createConversation` may set.\\n */\\n serviceProtectedColumns?: (keyof T & string)[];\\n ui?: {\\n recordTable?: Identity;\\n recordForm?: Identity;\\n };\\n }","filePath":null,"qualifiedName":"@proteinjs/db/{\\n db?: TableOperationsAuth;\\n service?: TableOperationsAuth;\\n /**\\n * Columns that can never be WRITTEN through the generic `DbService` RPC path: a service-path\\n * insert/update that sets one of these to a non-null value is rejected with a clean\\n * `ServiceError` before the operation runs (see `TableServiceAuth`). Server-side code using\\n * `Db` directly is unaffected. Use when a table must stay client-writable overall but a\\n * column\'s writes are reserved to server logic \\u2014 e.g. `chat.parent`, which only\\n * `FlowConversation.createConversation` may set.\\n */\\n serviceProtectedColumns?: (keyof T & string)[];\\n ui?: {\\n recordTable?: Identity;\\n recordForm?: Identity;\\n };\\n }","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[],"typeParameters":["/T extends Record"],"directParentInterfaces":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]},{"packageName":"@proteinjs/serializer","name":"CustomSerializableObject","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializableObject","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/serializer/CustomSerializableObject"},{"v":"/Record) => Promise"},{"v":"/Record, runAsSystem: boolean) => Promise"},{"v":"/string;\\n ui?: {\\n hideColumns?: boolean;\\n };\\n}"},{"v":"@proteinjs/db/TableQueryTransformProvider","value":{"packageName":"@proteinjs/db","name":"TableQueryTransformProvider","filePath":"src/TableQueryTransformProvider.ts","qualifiedName":"@proteinjs/db/TableQueryTransformProvider","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"getTable","type":{"packageName":"","name":"(tableName: string) => Table<any>","filePath":null,"qualifiedName":"/(tableName: string) => Table<any>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"runtime","type":{"packageName":"@proteinjs/db","name":"ColumnQueryRuntime","filePath":null,"qualifiedName":"@proteinjs/db/ColumnQueryRuntime","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"getTransform","returnType":{"packageName":"","name":"ColumnQueryTransform | undefined","filePath":null,"qualifiedName":"/ColumnQueryTransform | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"columnPropertyName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db-query","name":"ColumnQueryTransformProvider","filePath":null,"qualifiedName":"@proteinjs/db-query/ColumnQueryTransformProvider","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db-query/ColumnQueryTransformProvider"},{"v":"@proteinjs/db/TableWatcher","value":{"packageName":"@proteinjs/db","name":"TableWatcher","filePath":"src/TableWatcher.ts","qualifiedName":"@proteinjs/db/TableWatcher","properties":[],"methods":[{"name":"name","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[]},{"name":"table","returnType":{"packageName":"","name":"Table<R>","filePath":null,"qualifiedName":"/Table<R>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[]},{"name":"beforeInsert","returnType":{"packageName":"","name":"Promise<Omit<T, keyof R>>","filePath":null,"qualifiedName":"/Promise<Omit<T, keyof R>>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"record","type":{"packageName":"","name":"Omit<T, keyof R>","filePath":null,"qualifiedName":"/Omit<T, keyof R>","typeParameters":null,"directParents":null}}]},{"name":"afterInsert","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"record","type":{"packageName":"","name":"T","filePath":null,"qualifiedName":"/T","typeParameters":null,"directParents":null}}]},{"name":"beforeUpdate","returnType":{"packageName":"","name":"Promise<Partial<T>>","filePath":null,"qualifiedName":"/Promise<Partial<T>>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]},{"name":"afterUpdate","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"recordUpdateCount","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}},{"name":"record","type":{"packageName":"","name":"Partial<T>","filePath":null,"qualifiedName":"/Partial<T>","typeParameters":null,"directParents":null}},{"name":"qb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]},{"name":"beforeDelete","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"recordsToDelete","type":{"packageName":"","name":"T[]","filePath":null,"qualifiedName":"/T[]","typeParameters":null,"directParents":null}},{"name":"initialQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}},{"name":"deleteQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]},{"name":"afterDelete","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":true,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"recordDeleteCount","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}},{"name":"deletedRecords","type":{"packageName":"","name":"T[]","filePath":null,"qualifiedName":"/T[]","typeParameters":null,"directParents":null}},{"name":"initialQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}},{"name":"deleteQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null}}]}],"typeParameters":["/R extends Record = Record"],"directParents":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"/\'public\' | \'authenticated\' | string[] | PermissionIdentity"},{"v":"@proteinjs/db/DataEncryptionKeyTable","value":{"packageName":"@proteinjs/db","name":"DataEncryptionKeyTable","filePath":"src/encryption/DataEncryptionKeyTable.ts","qualifiedName":"@proteinjs/db/DataEncryptionKeyTable","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"name","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"columns","type":{"packageName":"","name":"Table<DataEncryptionKey>[\'columns\']","filePath":null,"qualifiedName":"/Table<DataEncryptionKey>[\'columns\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"indexes","type":{"packageName":"@proteinjs/db","name":"{ columns: (keyof DataEncryptionKey)[]; name?: string; unique?: boolean }[]","filePath":null,"qualifiedName":"@proteinjs/db/{ columns: (keyof DataEncryptionKey)[]; name?: string; unique?: boolean }[]","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[{"packageName":"@proteinjs/db","name":"Table","filePath":null,"qualifiedName":"@proteinjs/db/Table","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[],"typeParameters":["@proteinjs/db/DataEncryptionKey"],"directParentInterfaces":[],"directParentClasses":[]}],"sourceType":2}},{"v":"@proteinjs/db/DbEncryptionConfigFactory","value":{"packageName":"@proteinjs/db","name":"DbEncryptionConfigFactory","filePath":"src/encryption/DbEncryptionConfig.ts","qualifiedName":"@proteinjs/db/DbEncryptionConfigFactory","properties":[],"methods":[{"name":"getConfig","returnType":{"packageName":"@proteinjs/db","name":"DbEncryptionConfig","filePath":null,"qualifiedName":"@proteinjs/db/DbEncryptionConfig","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[]}],"typeParameters":[],"directParents":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"@proteinjs/db/EncryptedColumnQueryTransform","value":{"packageName":"@proteinjs/db","name":"EncryptedColumnQueryTransform","filePath":"src/encryption/EncryptedColumnQueryTransform.ts","qualifiedName":"@proteinjs/db/EncryptedColumnQueryTransform","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"encryptedColumns","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"tokenizer","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"prop","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"column","type":{"packageName":"","name":"Column<any, any>","filePath":null,"qualifiedName":"/Column<any, any>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"config","type":{"packageName":"@proteinjs/db","name":"EncryptedColumnConfig","filePath":null,"qualifiedName":"@proteinjs/db/EncryptedColumnConfig","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"runtime","type":{"packageName":"@proteinjs/db","name":"ColumnQueryRuntime","filePath":null,"qualifiedName":"@proteinjs/db/ColumnQueryRuntime","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"transformCondition","returnType":{"packageName":"","name":"Promise<Condition<any> | undefined>","filePath":null,"qualifiedName":"/Promise<Condition<any> | undefined>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"condition","type":{"packageName":"","name":"Condition<any>","filePath":null,"qualifiedName":"/Condition<any>","typeParameters":null,"directParents":null}},{"name":"context","type":{"packageName":"@proteinjs/db-query","name":"ColumnQueryTransformContext","filePath":null,"qualifiedName":"@proteinjs/db-query/ColumnQueryTransformContext","typeParameters":null,"directParents":null}}]},{"name":"transformSort","returnType":{"packageName":"","name":"SortCriteria<any>","filePath":null,"qualifiedName":"/SortCriteria<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"criteria","type":{"packageName":"","name":"SortCriteria<any>","filePath":null,"qualifiedName":"/SortCriteria<any>","typeParameters":null,"directParents":null}}]},{"name":"transformAggregate","returnType":{"packageName":"","name":"Aggregate<any> | undefined","filePath":null,"qualifiedName":"/Aggregate<any> | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"aggregate","type":{"packageName":"","name":"Aggregate<any>","filePath":null,"qualifiedName":"/Aggregate<any>","typeParameters":null,"directParents":null}}]},{"name":"transformGroupByField","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"equalityCondition","returnType":{"packageName":"","name":"Promise<Condition<any>>","filePath":null,"qualifiedName":"/Promise<Condition<any>>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"condition","type":{"packageName":"","name":"Condition<any>","filePath":null,"qualifiedName":"/Condition<any>","typeParameters":null,"directParents":null}},{"name":"context","type":{"packageName":"@proteinjs/db-query","name":"ColumnQueryTransformContext","filePath":null,"qualifiedName":"@proteinjs/db-query/ColumnQueryTransformContext","typeParameters":null,"directParents":null}}]},{"name":"likeCondition","returnType":{"packageName":"","name":"Promise<Condition<any>>","filePath":null,"qualifiedName":"/Promise<Condition<any>>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"condition","type":{"packageName":"","name":"Condition<any>","filePath":null,"qualifiedName":"/Condition<any>","typeParameters":null,"directParents":null}},{"name":"context","type":{"packageName":"@proteinjs/db-query","name":"ColumnQueryTransformContext","filePath":null,"qualifiedName":"@proteinjs/db-query/ColumnQueryTransformContext","typeParameters":null,"directParents":null}}]},{"name":"verifiedCandidateIds","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"shape","type":{"packageName":"@proteinjs/db","name":"LikeShape","filePath":null,"qualifiedName":"@proteinjs/db/LikeShape","typeParameters":null,"directParents":null}},{"name":"caseSensitive","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null}}]},{"name":"tokenCoverCandidates","returnType":{"packageName":"","name":"Promise<string[]>","filePath":null,"qualifiedName":"/Promise<string[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"fragments","type":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null}},{"name":"keys","type":{"packageName":"","name":"DataKeyMaterial[]","filePath":null,"qualifiedName":"/DataKeyMaterial[]","typeParameters":null,"directParents":null}}]},{"name":"matches","returnType":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"value","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"shape","type":{"packageName":"@proteinjs/db","name":"LikeShape","filePath":null,"qualifiedName":"@proteinjs/db/LikeShape","typeParameters":null,"directParents":null}},{"name":"caseSensitive","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null}}]},{"name":"parseLikePattern","returnType":{"packageName":"@proteinjs/db","name":"LikeShape","filePath":null,"qualifiedName":"@proteinjs/db/LikeShape","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"pattern","type":{"packageName":"","name":"unknown","filePath":null,"qualifiedName":"/unknown","typeParameters":null,"directParents":null}}]},{"name":"accessibleIndexKeys","returnType":{"packageName":"","name":"Promise<DataKeyMaterial[]>","filePath":null,"qualifiedName":"/Promise<DataKeyMaterial[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db-query","name":"ColumnQueryTransform","filePath":null,"qualifiedName":"@proteinjs/db-query/ColumnQueryTransform","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db-query/ColumnQueryTransform"},{"v":"/\'encrypt\' | \'retokenize\' | \'decrypt\' | \'rotate-keys\'"},{"v":"@proteinjs/db/ArrayMembershipOp","value":{"packageName":"@proteinjs/db","name":"ArrayMembershipOp","filePath":"src/reference/ArrayMembershipOps.ts","qualifiedName":"@proteinjs/db/ArrayMembershipOp","typeParameters":[],"directParents":[{"packageName":"","name":"| { op: \'add\'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: \'remove\'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: \'move\'; id: string; afterId: string | null }","filePath":null,"qualifiedName":"/| { op: \'add\'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: \'remove\'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: \'move\'; id: string; afterId: string | null }","typeParameters":[],"directParents":null}],"sourceType":1}},{"v":"/| { op: \'add\'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: \'remove\'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: \'move\'; id: string; afterId: string | null }"},{"v":"@proteinjs/db/Reference","value":{"packageName":"@proteinjs/db","name":"Reference","filePath":"src/reference/Reference.ts","qualifiedName":"@proteinjs/db/Reference","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"__serializerId","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_table","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_id","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_object","type":{"packageName":"","name":"T","filePath":null,"qualifiedName":"/T","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"fromObject","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"object","type":{"packageName":"","name":"T | (Partial<T> & { id: string })","filePath":null,"qualifiedName":"/T | (Partial<T> & { id: string })","typeParameters":null,"directParents":null}}]},{"name":"get","returnType":{"packageName":"","name":"Promise<T | undefined>","filePath":null,"qualifiedName":"/Promise<T | undefined>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getIfExists","returnType":{"packageName":"","name":"T | undefined","filePath":null,"qualifiedName":"/T | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"set","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"object","type":{"packageName":"","name":"T","filePath":null,"qualifiedName":"/T","typeParameters":null,"directParents":null}}]}],"typeParameters":["/T extends Record"],"directParentInterfaces":[{"packageName":"@proteinjs/serializer","name":"CustomSerializableObject","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializableObject","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/ReferenceArray","value":{"packageName":"@proteinjs/db","name":"ReferenceArray","filePath":"src/reference/ReferenceArray.ts","qualifiedName":"@proteinjs/db/ReferenceArray","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"__serializerId","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_table","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_ids","type":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"_objects","type":{"packageName":"","name":"T[]","filePath":null,"qualifiedName":"/T[]","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"fromObjects","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"objects","type":{"packageName":"","name":"(T | (Partial<T> & { id: string }))[]","filePath":null,"qualifiedName":"/(T | (Partial<T> & { id: string }))[]","typeParameters":null,"directParents":null}}]},{"name":"isLoaded","returnType":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"get","returnType":{"packageName":"","name":"Promise<T[]>","filePath":null,"qualifiedName":"/Promise<T[]>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getIfExists","returnType":{"packageName":"","name":"T[] | undefined","filePath":null,"qualifiedName":"/T[] | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"getLength","returnType":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[]},{"name":"set","returnType":null,"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"objects","type":{"packageName":"","name":"T[]","filePath":null,"qualifiedName":"/T[]","typeParameters":null,"directParents":null}}]}],"typeParameters":["/T extends Record"],"directParentInterfaces":[{"packageName":"@proteinjs/serializer","name":"CustomSerializableObject","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializableObject","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/ReferenceArraySerializer","value":{"packageName":"@proteinjs/db","name":"ReferenceArraySerializer","filePath":"src/serializers/ReferenceArraySerializer.ts","qualifiedName":"@proteinjs/db/ReferenceArraySerializer","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"id","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"serialize","returnType":{"packageName":"@proteinjs/db","name":"SerializedReferenceArray","filePath":null,"qualifiedName":"@proteinjs/db/SerializedReferenceArray","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"referenceArray","type":{"packageName":"","name":"ReferenceArray<any>","filePath":null,"qualifiedName":"/ReferenceArray<any>","typeParameters":null,"directParents":null}}]},{"name":"deserialize","returnType":{"packageName":"","name":"ReferenceArray<any>","filePath":null,"qualifiedName":"/ReferenceArray<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"serializedReferenceArray","type":{"packageName":"@proteinjs/db","name":"SerializedReferenceArray","filePath":null,"qualifiedName":"@proteinjs/db/SerializedReferenceArray","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/serializer","name":"CustomSerializer","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializer","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/serializer/CustomSerializer"},{"v":"@proteinjs/db/ReferenceSerializer","value":{"packageName":"@proteinjs/db","name":"ReferenceSerializer","filePath":"src/serializers/ReferenceSerializer.ts","qualifiedName":"@proteinjs/db/ReferenceSerializer","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"id","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"serialize","returnType":{"packageName":"@proteinjs/db","name":"SerializedReference","filePath":null,"qualifiedName":"@proteinjs/db/SerializedReference","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"reference","type":{"packageName":"","name":"Reference<any>","filePath":null,"qualifiedName":"/Reference<any>","typeParameters":null,"directParents":null}}]},{"name":"deserialize","returnType":{"packageName":"","name":"Reference<any>","filePath":null,"qualifiedName":"/Reference<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"serializedReference","type":{"packageName":"@proteinjs/db","name":"SerializedReference","filePath":null,"qualifiedName":"@proteinjs/db/SerializedReference","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/serializer","name":"CustomSerializer","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializer","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/TableSerializer","value":{"packageName":"@proteinjs/db","name":"TableSerializer","filePath":"src/serializers/TableSerializer.ts","qualifiedName":"@proteinjs/db/TableSerializer","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"id","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"serialize","returnType":{"packageName":"@proteinjs/db","name":"SerializedTable","filePath":null,"qualifiedName":"@proteinjs/db/SerializedTable","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"deserialize","returnType":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"serializedTable","type":{"packageName":"@proteinjs/db","name":"SerializedTable","filePath":null,"qualifiedName":"@proteinjs/db/SerializedTable","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/serializer","name":"CustomSerializer","filePath":null,"qualifiedName":"@proteinjs/serializer/CustomSerializer","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"/Partial"},{"v":"@proteinjs/service/Service"},{"v":"@proteinjs/db/TransactionRunnerService","value":{"packageName":"@proteinjs/db","name":"TransactionRunnerService","filePath":"src/services/TransactionRunnerService.ts","qualifiedName":"@proteinjs/db/TransactionRunnerService","properties":[],"methods":[{"name":"run","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"ops","type":{"packageName":"","name":"Operation<any>[]","filePath":null,"qualifiedName":"/Operation<any>[]","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"@proteinjs/db","name":"TransactionRunOptions","filePath":null,"qualifiedName":"@proteinjs/db/TransactionRunOptions","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParents":[{"packageName":"@proteinjs/service","name":"Service","filePath":null,"qualifiedName":"@proteinjs/service/Service","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"/DbRecord"},{"v":"@proteinjs/db/SourceRecordLoader","value":{"packageName":"@proteinjs/db","name":"SourceRecordLoader","filePath":"src/source/SourceRecordLoader.ts","qualifiedName":"@proteinjs/db/SourceRecordLoader","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"sourceVersions","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"load","returnType":{"packageName":"","name":"Promise<SourceRecordLoadSummary>","filePath":null,"qualifiedName":"/Promise<SourceRecordLoadSummary>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"onlyTable","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}}]},{"name":"reconcileRemoved","returnType":{"packageName":"","name":"Promise<{ deleteCount: number; removedUpdateCount: number; skippedNewer: number }>","filePath":null,"qualifiedName":"/Promise<{ deleteCount: number; removedUpdateCount: number; skippedNewer: number }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"db","type":{"packageName":"@proteinjs/db","name":"Db","filePath":null,"qualifiedName":"@proteinjs/db/Db","typeParameters":null,"directParents":null}},{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"keyProperty","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"buildSources","type":{"packageName":"","name":"Set<string>","filePath":null,"qualifiedName":"/Set<string>","typeParameters":null,"directParents":null}},{"name":"allDeclaredKeys","type":{"packageName":"","name":"unknown[]","filePath":null,"qualifiedName":"/unknown[]","typeParameters":null,"directParents":null}}]},{"name":"softRemovedRecordHoldingDeclaredId","returnType":{"packageName":"","name":"Promise<SourceRecord | undefined>","filePath":null,"qualifiedName":"/Promise<SourceRecord | undefined>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"db","type":{"packageName":"@proteinjs/db","name":"Db","filePath":null,"qualifiedName":"@proteinjs/db/Db","typeParameters":null,"directParents":null}},{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"keyProperty","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"declaredId","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"source","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"allDeclaredKeys","type":{"packageName":"","name":"unknown[]","filePath":null,"qualifiedName":"/unknown[]","typeParameters":null,"directParents":null}}]},{"name":"countUnowned","returnType":{"packageName":"","name":"Promise<number>","filePath":null,"qualifiedName":"/Promise<number>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"db","type":{"packageName":"@proteinjs/db","name":"Db","filePath":null,"qualifiedName":"@proteinjs/db/Db","typeParameters":null,"directParents":null}},{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"keyProperty","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"validateSyncKey","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"records","type":{"packageName":"","name":"Omit<SourceRecord, \'created\' | \'updated\'>[]","filePath":null,"qualifiedName":"/Omit<SourceRecord, \'created\' | \'updated\'>[]","typeParameters":null,"directParents":null}}]},{"name":"hasChanges","returnType":{"packageName":"","name":"Promise<boolean>","filePath":null,"qualifiedName":"/Promise<boolean>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null}},{"name":"sourceRecord","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}},{"name":"existingRecord","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}}]},{"name":"getDeclarations","returnType":{"packageName":"","name":"Promise<{ tables: SourceRecordsMap; buildSources: Set<string> }>","filePath":null,"qualifiedName":"/Promise<{ tables: SourceRecordsMap; buildSources: Set<string> }>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[]},{"name":"findMismatchPath","returnType":{"packageName":"","name":"string | null","filePath":null,"qualifiedName":"/string | null","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"source","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}},{"name":"existing","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}},{"name":"path","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"canonicalStringify","returnType":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"value","type":{"packageName":"","name":"unknown","filePath":null,"qualifiedName":"/unknown","typeParameters":null,"directParents":null}}]},{"name":"sourceVersion","returnType":{"packageName":"","name":"string | undefined","filePath":null,"qualifiedName":"/string | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"source","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"resolveSourceVersion","returnType":{"packageName":"","name":"string | undefined","filePath":null,"qualifiedName":"/string | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"source","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]},{"name":"isNewerStamp","returnType":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"stampedVersion","type":{"packageName":"","name":"string | null | undefined","filePath":null,"qualifiedName":"/string | null | undefined","typeParameters":null,"directParents":null}},{"name":"reconcilingVersion","type":{"packageName":"","name":"string | undefined","filePath":null,"qualifiedName":"/string | undefined","typeParameters":null,"directParents":null}}]},{"name":"compareVersions","returnType":{"packageName":"","name":"number | undefined","filePath":null,"qualifiedName":"/number | undefined","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"a","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"b","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/db/MigrationTable","value":{"packageName":"@proteinjs/db","name":"MigrationTable","filePath":"src/tables/MigrationTable.ts","qualifiedName":"@proteinjs/db/MigrationTable","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"name","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"auth","type":{"packageName":"","name":"Table<Migration>[\'auth\']","filePath":null,"qualifiedName":"/Table<Migration>[\'auth\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"ui","type":{"packageName":"","name":"Table<Migration>[\'ui\']","filePath":null,"qualifiedName":"/Table<Migration>[\'ui\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"columns","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"sourceRecordOptions","type":{"packageName":"","name":"Table<Migration>[\'sourceRecordOptions\']","filePath":null,"qualifiedName":"/Table<Migration>[\'sourceRecordOptions\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[{"packageName":"@proteinjs/db","name":"Table","filePath":null,"qualifiedName":"@proteinjs/db/Table","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[],"typeParameters":["@proteinjs/db/Migration"],"directParentInterfaces":[],"directParentClasses":[]}],"sourceType":2}},{"v":"/() => void | Promise"},{"v":"@proteinjs/db/DefaultTransactionContextFactory","value":{"packageName":"@proteinjs/db","name":"DefaultTransactionContextFactory","filePath":"src/transaction/TransactionContextFactory.ts","qualifiedName":"@proteinjs/db/DefaultTransactionContextFactory","properties":[],"methods":[{"name":"getTransactionContext","returnType":{"packageName":"@proteinjs/db","name":"TransactionContextData","filePath":null,"qualifiedName":"@proteinjs/db/TransactionContextData","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[]},{"name":"runInContext","returnType":{"packageName":"","name":"Promise<T>","filePath":null,"qualifiedName":"/Promise<T>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":true,"isStatic":false,"visibility":"public","parameters":[{"name":"context","type":{"packageName":"@proteinjs/db","name":"TransactionContextData","filePath":null,"qualifiedName":"@proteinjs/db/TransactionContextData","typeParameters":null,"directParents":null}},{"name":"fn","type":{"packageName":"","name":"() => Promise<T>","filePath":null,"qualifiedName":"/() => Promise<T>","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParents":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"sourceType":3}},{"v":"@proteinjs/db/TransactionRunner","value":{"packageName":"@proteinjs/db","name":"TransactionRunner","filePath":"src/transaction/TransactionRunner.ts","qualifiedName":"@proteinjs/db/TransactionRunner","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"serviceMetadata","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"FIRST_POLL_INTERVAL_MS","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"MAX_POLL_INTERVAL_MS","type":null,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private"},{"name":"logger","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"run","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"ops","type":{"packageName":"","name":"Operation<any>[]","filePath":null,"qualifiedName":"/Operation<any>[]","typeParameters":null,"directParents":null}},{"name":"options","type":{"packageName":"@proteinjs/db","name":"TransactionRunOptions","filePath":null,"qualifiedName":"@proteinjs/db/TransactionRunOptions","typeParameters":null,"directParents":null}}]},{"name":"awaitRows","returnType":{"packageName":"","name":"Promise<void>","filePath":null,"qualifiedName":"/Promise<void>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private","parameters":[{"name":"ops","type":{"packageName":"","name":"Operation<any>[]","filePath":null,"qualifiedName":"/Operation<any>[]","typeParameters":null,"directParents":null}},{"name":"afterRows","type":{"packageName":"","name":"string[]","filePath":null,"qualifiedName":"/string[]","typeParameters":null,"directParents":null}}]},{"name":"rowsTheOperationsReference","returnType":{"packageName":"","name":"Map<string, Table<any>[]>","filePath":null,"qualifiedName":"/Map<string, Table<any>[]>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private","parameters":[{"name":"ops","type":{"packageName":"","name":"Operation<any>[]","filePath":null,"qualifiedName":"/Operation<any>[]","typeParameters":null,"directParents":null}}]},{"name":"tableNamed","returnType":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":true,"visibility":"private","parameters":[{"name":"tableName","type":{"packageName":"","name":"string","filePath":null,"qualifiedName":"/string","typeParameters":null,"directParents":null}},{"name":"inserting","type":{"packageName":"","name":"Table<any> | undefined","filePath":null,"qualifiedName":"/Table<any> | undefined","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/db","name":"TransactionRunnerService","filePath":null,"qualifiedName":"@proteinjs/db/TransactionRunnerService","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}}],"edges":[{"v":"@proteinjs/db/DbDriverQueryStatementConfig","w":"@proteinjs/db-query/ParameterizationConfig","value":"extends type"},{"v":"@proteinjs/db/DbDriverDmlStatementConfig","w":"@proteinjs/db-query/ParameterizationConfig","value":"extends type"},{"v":"@proteinjs/db/DefaultDbDriverFactory","w":"@proteinjs/reflection/Loadable","value":"extends interface"},{"v":"@proteinjs/db/Db","w":"@proteinjs/db/DbService","value":"implements interface"},{"v":"@proteinjs/db/DbInitStartupTask","w":"@proteinjs/server-api/StartupTask","value":"implements interface"},{"v":"@proteinjs/db/MigrationRunner","w":"@proteinjs/db/MigrationRunnerService","value":"implements interface"},{"v":"@proteinjs/db/Table","w":"@proteinjs/reflection/Loadable","value":"implements interface"},{"v":"@proteinjs/db/Table","w":"@proteinjs/serializer/CustomSerializableObject","value":"implements interface"},{"v":"@proteinjs/db/TableQueryTransformProvider","w":"@proteinjs/db-query/ColumnQueryTransformProvider","value":"implements interface"},{"v":"@proteinjs/db/TableWatcher","w":"@proteinjs/reflection/Loadable","value":"extends interface"},{"v":"@proteinjs/db/DataEncryptionKeyTable","w":"@proteinjs/db/Table","value":"extends class"},{"v":"@proteinjs/db/DbEncryptionConfigFactory","w":"@proteinjs/reflection/Loadable","value":"extends interface"},{"v":"@proteinjs/db/EncryptedColumnQueryTransform","w":"@proteinjs/db-query/ColumnQueryTransform","value":"implements interface"},{"v":"@proteinjs/db/ArrayMembershipOp","w":"/| { op: \'add\'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: \'remove\'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: \'move\'; id: string; afterId: string | null }","value":"extends type"},{"v":"@proteinjs/db/Reference","w":"@proteinjs/serializer/CustomSerializableObject","value":"implements interface"},{"v":"@proteinjs/db/ReferenceArray","w":"@proteinjs/serializer/CustomSerializableObject","value":"implements interface"},{"v":"@proteinjs/db/ReferenceArraySerializer","w":"@proteinjs/serializer/CustomSerializer","value":"implements interface"},{"v":"@proteinjs/db/ReferenceSerializer","w":"@proteinjs/serializer/CustomSerializer","value":"implements interface"},{"v":"@proteinjs/db/TableSerializer","w":"@proteinjs/serializer/CustomSerializer","value":"implements interface"},{"v":"@proteinjs/db/DbService","w":"@proteinjs/service/Service","value":"extends interface"},{"v":"@proteinjs/db/MigrationRunnerService","w":"@proteinjs/service/Service","value":"extends interface"},{"v":"@proteinjs/db/TransactionRunnerService","w":"@proteinjs/service/Service","value":"extends interface"},{"v":"@proteinjs/db/SourceRecordLoader","w":"@proteinjs/reflection/Loadable","value":"extends interface"},{"v":"@proteinjs/db/MigrationTable","w":"@proteinjs/db/Table","value":"extends class"},{"v":"@proteinjs/db/DefaultTransactionContextFactory","w":"@proteinjs/reflection/Loadable","value":"extends interface"},{"v":"@proteinjs/db/TransactionRunner","w":"@proteinjs/db/TransactionRunnerService","value":"implements interface"}]}';
13
+ const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db/DbDriverQueryStatementConfig\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbDriverQueryStatementConfig\",\"filePath\":\"src/Db.ts\",\"qualifiedName\":\"@proteinjs/db/DbDriverQueryStatementConfig\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ParameterizationConfig\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ParameterizationConfig\",\"typeParameters\":[],\"directParents\":null},{\"packageName\":\"@proteinjs/db\",\"name\":\"{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n handleCaseSensitivity: (tableName: string, columnName: string, caseSensitive: boolean) => string;\\n /** Driver SQL for truncating a datetime column to a bucket unit (`QueryBuilder.timeBucket`). */\\n dateTruncExpression?: (resolvedColumnName: string, unit: 'day' | 'hour' | 'minute') => string;\\n /** Driver SQL standing in for a bound param's placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n handleCaseSensitivity: (tableName: string, columnName: string, caseSensitive: boolean) => string;\\n /** Driver SQL for truncating a datetime column to a bucket unit (`QueryBuilder.timeBucket`). */\\n dateTruncExpression?: (resolvedColumnName: string, unit: 'day' | 'hour' | 'minute') => string;\\n /** Driver SQL standing in for a bound param's placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}\",\"typeParameters\":[],\"directParents\":null}],\"sourceType\":1}},{\"v\":\"@proteinjs/db-query/ParameterizationConfig\"},{\"v\":\"@proteinjs/db/DbDriverDmlStatementConfig\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbDriverDmlStatementConfig\",\"filePath\":\"src/Db.ts\",\"qualifiedName\":\"@proteinjs/db/DbDriverDmlStatementConfig\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ParameterizationConfig\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ParameterizationConfig\",\"typeParameters\":[],\"directParents\":null},{\"packageName\":\"@proteinjs/db\",\"name\":\"{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n /** Driver SQL standing in for a bound param's placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{\\n prefixTablesWithDb?: boolean;\\n getDriverColumnType?: (tableName: string, columnName: string) => string;\\n /** Driver SQL standing in for a bound param's placeholder, by driver type (`StatementConfig.paramExpression`). */\\n paramExpression?: (placeholder: string, type: ParamType) => string;\\n}\",\"typeParameters\":[],\"directParents\":null}],\"sourceType\":1}},{\"v\":\"@proteinjs/db/DefaultDbDriverFactory\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultDbDriverFactory\",\"filePath\":\"src/Db.ts\",\"qualifiedName\":\"@proteinjs/db/DefaultDbDriverFactory\",\"properties\":[],\"methods\":[{\"name\":\"getDbDriver\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbDriver\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DbDriver\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/db/Db\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Db\",\"filePath\":\"src/Db.ts\",\"qualifiedName\":\"@proteinjs/db/Db\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"dbDriver\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbDriver\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DbDriver\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"getTable\",\"type\":{\"packageName\":\"\",\"name\":\"(tableName: string) => Table<any>\",\"filePath\":null,\"qualifiedName\":\"/(tableName: string) => Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"logger\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"statementConfigFactory\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"StatementConfigFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/StatementConfigFactory\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"auth\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"tableWatcherRunner\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"transactionContextFactory\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"serviceMetadata\",\"type\":{\"packageName\":\"\",\"name\":\"Service['serviceMetadata']\",\"filePath\":null,\"qualifiedName\":\"/Service['serviceMetadata']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"runAsSystem\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getDefaultDbDriver\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbDriver\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DbDriver\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"getDefaultTransactionContextFactory\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[]},{\"name\":\"init\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"tableExists\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<boolean>\",\"filePath\":null,\"qualifiedName\":\"/Promise<boolean>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"get\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"insert\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Omit<T, keyof R>\",\"filePath\":null,\"qualifiedName\":\"/Omit<T, keyof R>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"update\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updateArrayMembership\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"update\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ArrayMembershipUpdate\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/ArrayMembershipUpdate\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updatePreserving\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"preserve\",\"type\":{\"packageName\":\"\",\"name\":\"PreservedPath[]\",\"filePath\":null,\"qualifiedName\":\"/PreservedPath[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"delete\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runColumnBeforeDeletes\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"recordsToDelete\",\"type\":{\"packageName\":\"\",\"name\":\"Record[]\",\"filePath\":null,\"qualifiedName\":\"/Record[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runCascadeDeletions\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedRecords\",\"type\":{\"packageName\":\"\",\"name\":\"Record[]\",\"filePath\":null,\"qualifiedName\":\"/Record[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runColumnReverseCascadeDeletions\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedRecords\",\"type\":{\"packageName\":\"\",\"name\":\"Record[]\",\"filePath\":null,\"qualifiedName\":\"/Record[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"reverseDeleteReferenceArrayHolders\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"referencingTable\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"columnPropertyName\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedIds\",\"type\":{\"packageName\":\"\",\"name\":\"string[]\",\"filePath\":null,\"qualifiedName\":\"/string[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedIdSet\",\"type\":{\"packageName\":\"\",\"name\":\"Set<string>\",\"filePath\":null,\"qualifiedName\":\"/Set<string>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"query\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"_query\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"@proteinjs/db-query\",\"name\":\"QueryBuilder\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/QueryBuilder\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"preloadReferences\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"records\",\"type\":{\"packageName\":\"\",\"name\":\"any[]\",\"filePath\":null,\"qualifiedName\":\"/any[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"queryOptions\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<any>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getRowCount\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"queryAggregates\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<{ [key: string]: unknown }[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<{ [key: string]: unknown }[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"addColumnQueries\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"operation\",\"type\":{\"packageName\":\"\",\"name\":\"'read' | 'write' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'read' | 'write' | 'delete'\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"addColumnInsertHooks\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runColumnAfterInsertHooks\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"singleRowIdTarget\",\"returnType\":{\"packageName\":\"\",\"name\":\"string | undefined\",\"filePath\":null,\"qualifiedName\":\"/string | undefined\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runZeroRowFilteredWriteHooks\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"operation\",\"type\":{\"packageName\":\"\",\"name\":\"'write' | 'delete'\",\"filePath\":null,\"qualifiedName\":\"/'write' | 'delete'\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runTransaction\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runAfterCommit\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"hook\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"PostCommitHook\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/PostCommitHook\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"encryptionWriteContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<{ keyOwner: string } | undefined>\",\"filePath\":null,\"qualifiedName\":\"/Promise<{ keyOwner: string } | undefined>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updateTouchesEncryptedColumns\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<boolean>\",\"filePath\":null,\"qualifiedName\":\"/Promise<boolean>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updateEncrypted\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"recordCopy\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"deleteEncryptionTokenRows\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedIds\",\"type\":{\"packageName\":\"\",\"name\":\"string[]\",\"filePath\":null,\"qualifiedName\":\"/string[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"newSystemDb\",\"returnType\":{\"packageName\":\"\",\"name\":\"Db<any>\",\"filePath\":null,\"qualifiedName\":\"/Db<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[]},{\"name\":\"newSelfWrapDb\",\"returnType\":{\"packageName\":\"\",\"name\":\"Db<R>\",\"filePath\":null,\"qualifiedName\":\"/Db<R>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[]},{\"name\":\"transactionForDriver\",\"returnType\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[]},{\"name\":\"chunk\",\"returnType\":{\"packageName\":\"\",\"name\":\"T[][]\",\"filePath\":null,\"qualifiedName\":\"/T[][]\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"arr\",\"type\":{\"packageName\":\"\",\"name\":\"T[]\",\"filePath\":null,\"qualifiedName\":\"/T[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"size\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/R extends Record = Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"DbService\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DbService\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"/R\"],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DbService\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbService\",\"filePath\":\"src/services/DbService.ts\",\"qualifiedName\":\"@proteinjs/db/DbService\",\"properties\":[],\"methods\":[{\"name\":\"tableExists\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<boolean>\",\"filePath\":null,\"qualifiedName\":\"/Promise<boolean>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"get\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"insert\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Omit<T, keyof R>\",\"filePath\":null,\"qualifiedName\":\"/Omit<T, keyof R>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"update\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updateArrayMembership\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"update\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ArrayMembershipUpdate\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/ArrayMembershipUpdate\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"updatePreserving\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"preserve\",\"type\":{\"packageName\":\"\",\"name\":\"PreservedPath[]\",\"filePath\":null,\"qualifiedName\":\"/PreservedPath[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"delete\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"query\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getRowCount\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<number>\",\"filePath\":null,\"qualifiedName\":\"/Promise<number>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/R extends Record = Record\"],\"directParents\":[{\"packageName\":\"@proteinjs/service\",\"name\":\"Service\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/service/Service\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/db/DbInitStartupTask\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbInitStartupTask\",\"filePath\":\"src/DbInitStartupTask.ts\",\"qualifiedName\":\"@proteinjs/db/DbInitStartupTask\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"name\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"when\",\"type\":{\"packageName\":\"\",\"name\":\"StartupTask['when']\",\"filePath\":null,\"qualifiedName\":\"/StartupTask['when']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"run\",\"returnType\":null,\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/server-api\",\"name\":\"StartupTask\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/server-api/StartupTask\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/server-api/StartupTask\"},{\"v\":\"@proteinjs/db/MigrationRunner\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"MigrationRunner\",\"filePath\":\"src/MigrationRunner.ts\",\"qualifiedName\":\"@proteinjs/db/MigrationRunner\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"logger\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"serviceMetadata\",\"type\":{\"packageName\":\"\",\"name\":\"Service['serviceMetadata']\",\"filePath\":null,\"qualifiedName\":\"/Service['serviceMetadata']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"runMigration\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"ensureMigrationRun\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Migration>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Migration>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runPreSchemaSyncMigrations\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"tableManager\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TableManager\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TableManager\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"runPendingMigrations\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<MigrationSeriesSummary>\",\"filePath\":null,\"qualifiedName\":\"/Promise<MigrationSeriesSummary>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runAndRecord\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"migrationTable\",\"type\":{\"packageName\":\"\",\"name\":\"Table<Migration>\",\"filePath\":null,\"qualifiedName\":\"/Table<Migration>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"migration\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"getRunDb\",\"type\":{\"packageName\":\"\",\"name\":\"() => Db\",\"filePath\":null,\"qualifiedName\":\"/() => Db\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"definedFields\",\"returnType\":{\"packageName\":\"\",\"name\":\"Partial<Migration>\",\"filePath\":null,\"qualifiedName\":\"/Partial<Migration>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"migration\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"resolveMigration\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"migrationTable\",\"type\":{\"packageName\":\"\",\"name\":\"Table<Migration>\",\"filePath\":null,\"qualifiedName\":\"/Table<Migration>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"duration\",\"returnType\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"start\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Moment\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Moment\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"end\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Moment\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Moment\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"MigrationRunnerService\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/MigrationRunnerService\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/MigrationRunnerService\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"MigrationRunnerService\",\"filePath\":\"src/services/MigrationRunnerService.ts\",\"qualifiedName\":\"@proteinjs/db/MigrationRunnerService\",\"properties\":[],\"methods\":[{\"name\":\"runMigration\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/service\",\"name\":\"Service\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/service/Service\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"/Error\"},{\"v\":\"/AsyncIterable\"},{\"v\":\"/(\\n | { refKind: 'reference' | 'referenceArray' }\\n | { refKind: 'dynamicReference'; dynamicRefTableColumnPropertyName: string }\\n)\"},{\"v\":\"@proteinjs/db/Table\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Table\",\"filePath\":\"src/Table.ts\",\"qualifiedName\":\"@proteinjs/db/Table\",\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"__serializerId\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"name\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"columns\",\"type\":{\"packageName\":\"\",\"name\":\"Columns<T>\",\"filePath\":null,\"qualifiedName\":\"/Columns<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"indexes\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"{ columns: (keyof T)[]; name?: string; unique?: boolean }[]\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{ columns: (keyof T)[]; name?: string; unique?: boolean }[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"cascadeDeleteReferences\",\"type\":{\"packageName\":\"\",\"name\":\"() => { table: string; referenceColumn: string }[]\",\"filePath\":null,\"qualifiedName\":\"/() => { table: string; referenceColumn: string }[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"sourceRecordOptions\",\"type\":{\"packageName\":\"\",\"name\":\"SourceRecordOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/SourceRecordOptions<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"durable\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"ui\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"{\\n recordTable?: {\\n /**\\n * The columns rendered as the record table's row columns, in this order. `created` and\\n * `updated` are appended automatically (the record family's shared face) unless already\\n * listed. Undeclared tables get the meaningful-data default pick\\n * (db-ui `defaultRecordTableColumns`). Declare when the default pick misses a column a\\n * human scans for (e.g. the migration ledger's `duration`) or surfaces one that has no\\n * business in a row scan (e.g. an invite's redeemable `token` \\u2014 row hygiene; the record\\n * form still carries the full record).\\n */\\n columns?: (keyof T & string)[];\\n /**\\n * The record table's default ordering (the sort its default loader applies before any\\n * user interaction). Undeclared tables keep the generic `updated` descending. Declare\\n * when the rows have a natural reading order the shared face can't know \\u2014 e.g. the\\n * migration ledger reads most-recently-run first, never-run rows last.\\n */\\n sort?: SortCriteria<T>[];\\n /**\\n * A table whose rows have their OWN page instead of the generic record form: the record table\\n * links each row here (replacing the generic form link), draws no New button and no selection\\n * Delete button, and the generic form page replace-navigates stale\\n * `/record/form?table=<name>&record=<id>` URLs to this link. Built from the id alone so the\\n * redirect never needs a row load.\\n */\\n recordLink?: (row: Pick<T, 'id'>) => string;\\n /**\\n * The list actions the record table's title-row seat carries (see `RecordTableAction`).\\n * Undeclared, the seat derives the generic pair from the auth doors \\u2014 create from the\\n * insert doors, delete-on-selection from the delete doors \\u2014 exactly as every table did\\n * before this declaration existed. A declared entry CONFIGURES the act of its kind (door\\n * and/or label); kinds left undeclared keep the derivation. The seat, not the table, owns\\n * placement: every declared act renders in the same seat on desktop and phone. A\\n * {@link Table.durable} table's seat carries no delete act, declared or derived.\\n */\\n actions?: RecordTableAction[];\\n };\\n }\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{\\n recordTable?: {\\n /**\\n * The columns rendered as the record table's row columns, in this order. `created` and\\n * `updated` are appended automatically (the record family's shared face) unless already\\n * listed. Undeclared tables get the meaningful-data default pick\\n * (db-ui `defaultRecordTableColumns`). Declare when the default pick misses a column a\\n * human scans for (e.g. the migration ledger's `duration`) or surfaces one that has no\\n * business in a row scan (e.g. an invite's redeemable `token` \\u2014 row hygiene; the record\\n * form still carries the full record).\\n */\\n columns?: (keyof T & string)[];\\n /**\\n * The record table's default ordering (the sort its default loader applies before any\\n * user interaction). Undeclared tables keep the generic `updated` descending. Declare\\n * when the rows have a natural reading order the shared face can't know \\u2014 e.g. the\\n * migration ledger reads most-recently-run first, never-run rows last.\\n */\\n sort?: SortCriteria<T>[];\\n /**\\n * A table whose rows have their OWN page instead of the generic record form: the record table\\n * links each row here (replacing the generic form link), draws no New button and no selection\\n * Delete button, and the generic form page replace-navigates stale\\n * `/record/form?table=<name>&record=<id>` URLs to this link. Built from the id alone so the\\n * redirect never needs a row load.\\n */\\n recordLink?: (row: Pick<T, 'id'>) => string;\\n /**\\n * The list actions the record table's title-row seat carries (see `RecordTableAction`).\\n * Undeclared, the seat derives the generic pair from the auth doors \\u2014 create from the\\n * insert doors, delete-on-selection from the delete doors \\u2014 exactly as every table did\\n * before this declaration existed. A declared entry CONFIGURES the act of its kind (door\\n * and/or label); kinds left undeclared keep the derivation. The seat, not the table, owns\\n * placement: every declared act renders in the same seat on desktop and phone. A\\n * {@link Table.durable} table's seat carries no delete act, declared or derived.\\n */\\n actions?: RecordTableAction[];\\n };\\n }\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"auth\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"{\\n db?: TableOperationsAuth;\\n service?: TableOperationsAuth;\\n /**\\n * Columns that can never be WRITTEN through the generic `DbService` RPC path: a service-path\\n * insert/update that sets one of these to a non-null value is rejected with a clean\\n * `ServiceError` before the operation runs (see `TableServiceAuth`). Server-side code using\\n * `Db` directly is unaffected. Use when a table must stay client-writable overall but a\\n * column's writes are reserved to server logic \\u2014 e.g. `chat.parent`, which only\\n * `FlowConversation.createConversation` may set.\\n */\\n serviceProtectedColumns?: (keyof T & string)[];\\n ui?: {\\n recordTable?: Identity;\\n recordForm?: Identity;\\n };\\n }\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{\\n db?: TableOperationsAuth;\\n service?: TableOperationsAuth;\\n /**\\n * Columns that can never be WRITTEN through the generic `DbService` RPC path: a service-path\\n * insert/update that sets one of these to a non-null value is rejected with a clean\\n * `ServiceError` before the operation runs (see `TableServiceAuth`). Server-side code using\\n * `Db` directly is unaffected. Use when a table must stay client-writable overall but a\\n * column's writes are reserved to server logic \\u2014 e.g. `chat.parent`, which only\\n * `FlowConversation.createConversation` may set.\\n */\\n serviceProtectedColumns?: (keyof T & string)[];\\n ui?: {\\n recordTable?: Identity;\\n recordForm?: Identity;\\n };\\n }\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]},{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializableObject\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializableObject\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/serializer/CustomSerializableObject\"},{\"v\":\"/Record) => Promise\"},{\"v\":\"/Record, runAsSystem: boolean) => Promise\"},{\"v\":\"/string;\\n ui?: {\\n hideColumns?: boolean;\\n };\\n}\"},{\"v\":\"@proteinjs/db/TableQueryTransformProvider\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TableQueryTransformProvider\",\"filePath\":\"src/TableQueryTransformProvider.ts\",\"qualifiedName\":\"@proteinjs/db/TableQueryTransformProvider\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"getTable\",\"type\":{\"packageName\":\"\",\"name\":\"(tableName: string) => Table<any>\",\"filePath\":null,\"qualifiedName\":\"/(tableName: string) => Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"runtime\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ColumnQueryRuntime\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/ColumnQueryRuntime\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"getTransform\",\"returnType\":{\"packageName\":\"\",\"name\":\"ColumnQueryTransform | undefined\",\"filePath\":null,\"qualifiedName\":\"/ColumnQueryTransform | undefined\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"tableName\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"columnPropertyName\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ColumnQueryTransformProvider\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ColumnQueryTransformProvider\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db-query/ColumnQueryTransformProvider\"},{\"v\":\"@proteinjs/db/TableWatcher\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TableWatcher\",\"filePath\":\"src/TableWatcher.ts\",\"qualifiedName\":\"@proteinjs/db/TableWatcher\",\"properties\":[],\"methods\":[{\"name\":\"name\",\"returnType\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"table\",\"returnType\":{\"packageName\":\"\",\"name\":\"Table<R>\",\"filePath\":null,\"qualifiedName\":\"/Table<R>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"beforeInsert\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Omit<T, keyof R>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Omit<T, keyof R>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Omit<T, keyof R>\",\"filePath\":null,\"qualifiedName\":\"/Omit<T, keyof R>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterInsert\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"T\",\"filePath\":null,\"qualifiedName\":\"/T\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"beforeUpdate\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Partial<T>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Partial<T>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterUpdate\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"recordUpdateCount\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"Partial<T>\",\"filePath\":null,\"qualifiedName\":\"/Partial<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"qb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"beforeDelete\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"recordsToDelete\",\"type\":{\"packageName\":\"\",\"name\":\"T[]\",\"filePath\":null,\"qualifiedName\":\"/T[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"initialQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deleteQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"afterDelete\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":true,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"recordDeleteCount\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deletedRecords\",\"type\":{\"packageName\":\"\",\"name\":\"T[]\",\"filePath\":null,\"qualifiedName\":\"/T[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"initialQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"deleteQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/R extends Record = Record\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"/'public' | 'authenticated' | string[] | PermissionIdentity\"},{\"v\":\"@proteinjs/db/DataEncryptionKeyTable\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DataEncryptionKeyTable\",\"filePath\":\"src/encryption/DataEncryptionKeyTable.ts\",\"qualifiedName\":\"@proteinjs/db/DataEncryptionKeyTable\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"name\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"columns\",\"type\":{\"packageName\":\"\",\"name\":\"Table<DataEncryptionKey>['columns']\",\"filePath\":null,\"qualifiedName\":\"/Table<DataEncryptionKey>['columns']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"indexes\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"{ columns: (keyof DataEncryptionKey)[]; name?: string; unique?: boolean }[]\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{ columns: (keyof DataEncryptionKey)[]; name?: string; unique?: boolean }[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"Table\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Table\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"@proteinjs/db/DataEncryptionKey\"],\"directParentInterfaces\":[],\"directParentClasses\":[]}],\"sourceType\":2}},{\"v\":\"@proteinjs/db/DbEncryptionConfigFactory\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbEncryptionConfigFactory\",\"filePath\":\"src/encryption/DbEncryptionConfig.ts\",\"qualifiedName\":\"@proteinjs/db/DbEncryptionConfigFactory\",\"properties\":[],\"methods\":[{\"name\":\"getConfig\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DbEncryptionConfig\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/DbEncryptionConfig\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/db/EncryptedColumnQueryTransform\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"EncryptedColumnQueryTransform\",\"filePath\":\"src/encryption/EncryptedColumnQueryTransform.ts\",\"qualifiedName\":\"@proteinjs/db/EncryptedColumnQueryTransform\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"encryptedColumns\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"tokenizer\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"prop\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"column\",\"type\":{\"packageName\":\"\",\"name\":\"Column<any, any>\",\"filePath\":null,\"qualifiedName\":\"/Column<any, any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"config\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"EncryptedColumnConfig\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/EncryptedColumnConfig\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"runtime\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ColumnQueryRuntime\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/ColumnQueryRuntime\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"transformCondition\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Condition<any> | undefined>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Condition<any> | undefined>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"condition\",\"type\":{\"packageName\":\"\",\"name\":\"Condition<any>\",\"filePath\":null,\"qualifiedName\":\"/Condition<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ColumnQueryTransformContext\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ColumnQueryTransformContext\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"transformSort\",\"returnType\":{\"packageName\":\"\",\"name\":\"SortCriteria<any>\",\"filePath\":null,\"qualifiedName\":\"/SortCriteria<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"criteria\",\"type\":{\"packageName\":\"\",\"name\":\"SortCriteria<any>\",\"filePath\":null,\"qualifiedName\":\"/SortCriteria<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"transformAggregate\",\"returnType\":{\"packageName\":\"\",\"name\":\"Aggregate<any> | undefined\",\"filePath\":null,\"qualifiedName\":\"/Aggregate<any> | undefined\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"aggregate\",\"type\":{\"packageName\":\"\",\"name\":\"Aggregate<any>\",\"filePath\":null,\"qualifiedName\":\"/Aggregate<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"transformGroupByField\",\"returnType\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"equalityCondition\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Condition<any>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Condition<any>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"condition\",\"type\":{\"packageName\":\"\",\"name\":\"Condition<any>\",\"filePath\":null,\"qualifiedName\":\"/Condition<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ColumnQueryTransformContext\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ColumnQueryTransformContext\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"likeCondition\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<Condition<any>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<Condition<any>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"condition\",\"type\":{\"packageName\":\"\",\"name\":\"Condition<any>\",\"filePath\":null,\"qualifiedName\":\"/Condition<any>\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ColumnQueryTransformContext\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ColumnQueryTransformContext\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"verifiedCandidateIds\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"shape\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"LikeShape\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/LikeShape\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"caseSensitive\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"tokenCoverCandidates\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<string[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<string[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"fragments\",\"type\":{\"packageName\":\"\",\"name\":\"string[]\",\"filePath\":null,\"qualifiedName\":\"/string[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"keys\",\"type\":{\"packageName\":\"\",\"name\":\"DataKeyMaterial[]\",\"filePath\":null,\"qualifiedName\":\"/DataKeyMaterial[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"matches\",\"returnType\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"value\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"shape\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"LikeShape\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/LikeShape\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"caseSensitive\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"parseLikePattern\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"LikeShape\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/LikeShape\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"pattern\",\"type\":{\"packageName\":\"\",\"name\":\"unknown\",\"filePath\":null,\"qualifiedName\":\"/unknown\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"accessibleIndexKeys\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<DataKeyMaterial[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<DataKeyMaterial[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db-query\",\"name\":\"ColumnQueryTransform\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-query/ColumnQueryTransform\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db-query/ColumnQueryTransform\"},{\"v\":\"/'encrypt' | 'retokenize' | 'decrypt' | 'rotate-keys'\"},{\"v\":\"@proteinjs/db/ArrayMembershipOp\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ArrayMembershipOp\",\"filePath\":\"src/reference/ArrayMembershipOps.ts\",\"qualifiedName\":\"@proteinjs/db/ArrayMembershipOp\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"\",\"name\":\"| { op: 'add'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: 'remove'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: 'move'; id: string; afterId: string | null }\",\"filePath\":null,\"qualifiedName\":\"/| { op: 'add'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: 'remove'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: 'move'; id: string; afterId: string | null }\",\"typeParameters\":[],\"directParents\":null}],\"sourceType\":1}},{\"v\":\"/| { op: 'add'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: 'remove'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: 'move'; id: string; afterId: string | null }\"},{\"v\":\"@proteinjs/db/Reference\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Reference\",\"filePath\":\"src/reference/Reference.ts\",\"qualifiedName\":\"@proteinjs/db/Reference\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"__serializerId\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_table\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_id\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_object\",\"type\":{\"packageName\":\"\",\"name\":\"T\",\"filePath\":null,\"qualifiedName\":\"/T\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"fromObject\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"object\",\"type\":{\"packageName\":\"\",\"name\":\"T | (Partial<T> & { id: string })\",\"filePath\":null,\"qualifiedName\":\"/T | (Partial<T> & { id: string })\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"get\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T | undefined>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T | undefined>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"getIfExists\",\"returnType\":{\"packageName\":\"\",\"name\":\"T | undefined\",\"filePath\":null,\"qualifiedName\":\"/T | undefined\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"set\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"object\",\"type\":{\"packageName\":\"\",\"name\":\"T\",\"filePath\":null,\"qualifiedName\":\"/T\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializableObject\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializableObject\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/ReferenceArray\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ReferenceArray\",\"filePath\":\"src/reference/ReferenceArray.ts\",\"qualifiedName\":\"@proteinjs/db/ReferenceArray\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"__serializerId\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_table\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_ids\",\"type\":{\"packageName\":\"\",\"name\":\"string[]\",\"filePath\":null,\"qualifiedName\":\"/string[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"_objects\",\"type\":{\"packageName\":\"\",\"name\":\"T[]\",\"filePath\":null,\"qualifiedName\":\"/T[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"fromObjects\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"objects\",\"type\":{\"packageName\":\"\",\"name\":\"(T | (Partial<T> & { id: string }))[]\",\"filePath\":null,\"qualifiedName\":\"/(T | (Partial<T> & { id: string }))[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"isLoaded\",\"returnType\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"get\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T[]>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"getIfExists\",\"returnType\":{\"packageName\":\"\",\"name\":\"T[] | undefined\",\"filePath\":null,\"qualifiedName\":\"/T[] | undefined\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"getLength\",\"returnType\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"set\",\"returnType\":null,\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"objects\",\"type\":{\"packageName\":\"\",\"name\":\"T[]\",\"filePath\":null,\"qualifiedName\":\"/T[]\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializableObject\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializableObject\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/ReferenceArraySerializer\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ReferenceArraySerializer\",\"filePath\":\"src/serializers/ReferenceArraySerializer.ts\",\"qualifiedName\":\"@proteinjs/db/ReferenceArraySerializer\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"id\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"serialize\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedReferenceArray\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedReferenceArray\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"referenceArray\",\"type\":{\"packageName\":\"\",\"name\":\"ReferenceArray<any>\",\"filePath\":null,\"qualifiedName\":\"/ReferenceArray<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"deserialize\",\"returnType\":{\"packageName\":\"\",\"name\":\"ReferenceArray<any>\",\"filePath\":null,\"qualifiedName\":\"/ReferenceArray<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"serializedReferenceArray\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedReferenceArray\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedReferenceArray\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializer\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializer\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/serializer/CustomSerializer\"},{\"v\":\"@proteinjs/db/ReferenceSerializer\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"ReferenceSerializer\",\"filePath\":\"src/serializers/ReferenceSerializer.ts\",\"qualifiedName\":\"@proteinjs/db/ReferenceSerializer\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"id\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"serialize\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedReference\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedReference\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"reference\",\"type\":{\"packageName\":\"\",\"name\":\"Reference<any>\",\"filePath\":null,\"qualifiedName\":\"/Reference<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"deserialize\",\"returnType\":{\"packageName\":\"\",\"name\":\"Reference<any>\",\"filePath\":null,\"qualifiedName\":\"/Reference<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"serializedReference\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedReference\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedReference\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializer\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializer\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/db/TableSerializer\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TableSerializer\",\"filePath\":\"src/serializers/TableSerializer.ts\",\"qualifiedName\":\"@proteinjs/db/TableSerializer\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"id\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"serialize\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedTable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedTable\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"deserialize\",\"returnType\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"serializedTable\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SerializedTable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/SerializedTable\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/serializer\",\"name\":\"CustomSerializer\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/serializer/CustomSerializer\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"/Partial\"},{\"v\":\"@proteinjs/service/Service\"},{\"v\":\"@proteinjs/db/TransactionRunnerService\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionRunnerService\",\"filePath\":\"src/services/TransactionRunnerService.ts\",\"qualifiedName\":\"@proteinjs/db/TransactionRunnerService\",\"properties\":[],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"ops\",\"type\":{\"packageName\":\"\",\"name\":\"Operation<any>[]\",\"filePath\":null,\"qualifiedName\":\"/Operation<any>[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionRunOptions\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionRunOptions\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/service\",\"name\":\"Service\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/service/Service\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"/DbRecord\"},{\"v\":\"@proteinjs/db/SourceRecordLoader\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"SourceRecordLoader\",\"filePath\":\"src/source/SourceRecord.ts\",\"qualifiedName\":\"@proteinjs/db/SourceRecordLoader\",\"properties\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"record\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"{\\n [P in keyof RequiredProperties<InferRecordWithoutTimestamps<Table<T>>>]: RequiredProperties<\\n InferRecordWithoutTimestamps<Table<T>>\\n >[P];\\n } & {\\n [P in keyof OptionalProperties<InferRecordWithoutTimestamps<Table<T>>>]?: OptionalProperties<\\n InferRecordWithoutTimestamps<Table<T>>\\n >[P];\\n }\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/{\\n [P in keyof RequiredProperties<InferRecordWithoutTimestamps<Table<T>>>]: RequiredProperties<\\n InferRecordWithoutTimestamps<Table<T>>\\n >[P];\\n } & {\\n [P in keyof OptionalProperties<InferRecordWithoutTimestamps<Table<T>>>]?: OptionalProperties<\\n InferRecordWithoutTimestamps<Table<T>>\\n >[P];\\n }\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[\"/T extends SourceRecord\"],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/db/MigrationTable\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"MigrationTable\",\"filePath\":\"src/tables/MigrationTable.ts\",\"qualifiedName\":\"@proteinjs/db/MigrationTable\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"name\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"auth\",\"type\":{\"packageName\":\"\",\"name\":\"Table<Migration>['auth']\",\"filePath\":null,\"qualifiedName\":\"/Table<Migration>['auth']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"durable\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"ui\",\"type\":{\"packageName\":\"\",\"name\":\"Table<Migration>['ui']\",\"filePath\":null,\"qualifiedName\":\"/Table<Migration>['ui']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"columns\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"sourceRecordOptions\",\"type\":{\"packageName\":\"\",\"name\":\"Table<Migration>['sourceRecordOptions']\",\"filePath\":null,\"qualifiedName\":\"/Table<Migration>['sourceRecordOptions']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"Table\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Table\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"@proteinjs/db/Migration\"],\"directParentInterfaces\":[],\"directParentClasses\":[]}],\"sourceType\":2}},{\"v\":\"/() => void | Promise\"},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"DefaultTransactionContextFactory\",\"filePath\":\"src/transaction/TransactionContextFactory.ts\",\"qualifiedName\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"properties\":[],\"methods\":[{\"name\":\"getTransactionContext\",\"returnType\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[]},{\"name\":\"runInContext\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/Promise<T>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":true,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"context\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionContextData\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionContextData\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"fn\",\"type\":{\"packageName\":\"\",\"name\":\"() => Promise<T>\",\"filePath\":null,\"qualifiedName\":\"/() => Promise<T>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"sourceType\":3}},{\"v\":\"@proteinjs/db/TransactionRunner\",\"value\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionRunner\",\"filePath\":\"src/transaction/TransactionRunner.ts\",\"qualifiedName\":\"@proteinjs/db/TransactionRunner\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"serviceMetadata\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"FIRST_POLL_INTERVAL_MS\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"},{\"name\":\"MAX_POLL_INTERVAL_MS\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\"},{\"name\":\"logger\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"run\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"ops\",\"type\":{\"packageName\":\"\",\"name\":\"Operation<any>[]\",\"filePath\":null,\"qualifiedName\":\"/Operation<any>[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"options\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionRunOptions\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionRunOptions\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"awaitRows\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<void>\",\"filePath\":null,\"qualifiedName\":\"/Promise<void>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\",\"parameters\":[{\"name\":\"ops\",\"type\":{\"packageName\":\"\",\"name\":\"Operation<any>[]\",\"filePath\":null,\"qualifiedName\":\"/Operation<any>[]\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"afterRows\",\"type\":{\"packageName\":\"\",\"name\":\"string[]\",\"filePath\":null,\"qualifiedName\":\"/string[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"rowsTheOperationsReference\",\"returnType\":{\"packageName\":\"\",\"name\":\"Map<string, Table<any>[]>\",\"filePath\":null,\"qualifiedName\":\"/Map<string, Table<any>[]>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\",\"parameters\":[{\"name\":\"ops\",\"type\":{\"packageName\":\"\",\"name\":\"Operation<any>[]\",\"filePath\":null,\"qualifiedName\":\"/Operation<any>[]\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"tableNamed\",\"returnType\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":true,\"visibility\":\"private\",\"parameters\":[{\"name\":\"tableName\",\"type\":{\"packageName\":\"\",\"name\":\"string\",\"filePath\":null,\"qualifiedName\":\"/string\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"inserting\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any> | undefined\",\"filePath\":null,\"qualifiedName\":\"/Table<any> | undefined\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/db\",\"name\":\"TransactionRunnerService\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/TransactionRunnerService\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/db/DbDriverQueryStatementConfig\",\"w\":\"@proteinjs/db-query/ParameterizationConfig\",\"value\":\"extends type\"},{\"v\":\"@proteinjs/db/DbDriverDmlStatementConfig\",\"w\":\"@proteinjs/db-query/ParameterizationConfig\",\"value\":\"extends type\"},{\"v\":\"@proteinjs/db/DefaultDbDriverFactory\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/Db\",\"w\":\"@proteinjs/db/DbService\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/DbInitStartupTask\",\"w\":\"@proteinjs/server-api/StartupTask\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/MigrationRunner\",\"w\":\"@proteinjs/db/MigrationRunnerService\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/Table\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/Table\",\"w\":\"@proteinjs/serializer/CustomSerializableObject\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/TableQueryTransformProvider\",\"w\":\"@proteinjs/db-query/ColumnQueryTransformProvider\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/TableWatcher\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/DataEncryptionKeyTable\",\"w\":\"@proteinjs/db/Table\",\"value\":\"extends class\"},{\"v\":\"@proteinjs/db/DbEncryptionConfigFactory\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/EncryptedColumnQueryTransform\",\"w\":\"@proteinjs/db-query/ColumnQueryTransform\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/ArrayMembershipOp\",\"w\":\"/| { op: 'add'; id: string; afterId: string | null }\\n /** Remove `id`. No-op when absent. */\\n | { op: 'remove'; id: string }\\n /** Reposition `id` after `afterId` (`null` = at the head). No-op when `id` is absent (a concurrent remove wins). */\\n | { op: 'move'; id: string; afterId: string | null }\",\"value\":\"extends type\"},{\"v\":\"@proteinjs/db/Reference\",\"w\":\"@proteinjs/serializer/CustomSerializableObject\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/ReferenceArray\",\"w\":\"@proteinjs/serializer/CustomSerializableObject\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/ReferenceArraySerializer\",\"w\":\"@proteinjs/serializer/CustomSerializer\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/ReferenceSerializer\",\"w\":\"@proteinjs/serializer/CustomSerializer\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/TableSerializer\",\"w\":\"@proteinjs/serializer/CustomSerializer\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db/DbService\",\"w\":\"@proteinjs/service/Service\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/MigrationRunnerService\",\"w\":\"@proteinjs/service/Service\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/TransactionRunnerService\",\"w\":\"@proteinjs/service/Service\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/SourceRecordLoader\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/MigrationTable\",\"w\":\"@proteinjs/db/Table\",\"value\":\"extends class\"},{\"v\":\"@proteinjs/db/DefaultTransactionContextFactory\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"extends interface\"},{\"v\":\"@proteinjs/db/TransactionRunner\",\"w\":\"@proteinjs/db/TransactionRunnerService\",\"value\":\"implements interface\"}]}";
14
+
14
15
 
15
16
  /** Generate Source Links */
16
17
 
@@ -26,31 +27,31 @@ import { ReferenceArray } from '../src/reference/ReferenceArray';
26
27
  import { ReferenceArraySerializer } from '../src/serializers/ReferenceArraySerializer';
27
28
  import { ReferenceSerializer } from '../src/serializers/ReferenceSerializer';
28
29
  import { TableSerializer } from '../src/serializers/TableSerializer';
29
- import { SourceRecordLoader } from '../src/source/SourceRecordLoader';
30
30
  import { MigrationTable } from '../src/tables/MigrationTable';
31
31
  import { TransactionRunner } from '../src/transaction/TransactionRunner';
32
32
 
33
33
  const sourceLinks = {
34
- '@proteinjs/db/Db': Db,
35
- '@proteinjs/db/DbInitStartupTask': DbInitStartupTask,
36
- '@proteinjs/db/MigrationRunner': MigrationRunner,
37
- '@proteinjs/db/Table': Table,
38
- '@proteinjs/db/TableQueryTransformProvider': TableQueryTransformProvider,
39
- '@proteinjs/db/DataEncryptionKeyTable': DataEncryptionKeyTable,
40
- '@proteinjs/db/EncryptedColumnQueryTransform': EncryptedColumnQueryTransform,
41
- '@proteinjs/db/Reference': Reference,
42
- '@proteinjs/db/ReferenceArray': ReferenceArray,
43
- '@proteinjs/db/ReferenceArraySerializer': ReferenceArraySerializer,
44
- '@proteinjs/db/ReferenceSerializer': ReferenceSerializer,
45
- '@proteinjs/db/TableSerializer': TableSerializer,
46
- '@proteinjs/db/SourceRecordLoader': SourceRecordLoader,
47
- '@proteinjs/db/MigrationTable': MigrationTable,
48
- '@proteinjs/db/TransactionRunner': TransactionRunner,
34
+ '@proteinjs/db/Db': Db,
35
+ '@proteinjs/db/DbInitStartupTask': DbInitStartupTask,
36
+ '@proteinjs/db/MigrationRunner': MigrationRunner,
37
+ '@proteinjs/db/Table': Table,
38
+ '@proteinjs/db/TableQueryTransformProvider': TableQueryTransformProvider,
39
+ '@proteinjs/db/DataEncryptionKeyTable': DataEncryptionKeyTable,
40
+ '@proteinjs/db/EncryptedColumnQueryTransform': EncryptedColumnQueryTransform,
41
+ '@proteinjs/db/Reference': Reference,
42
+ '@proteinjs/db/ReferenceArray': ReferenceArray,
43
+ '@proteinjs/db/ReferenceArraySerializer': ReferenceArraySerializer,
44
+ '@proteinjs/db/ReferenceSerializer': ReferenceSerializer,
45
+ '@proteinjs/db/TableSerializer': TableSerializer,
46
+ '@proteinjs/db/MigrationTable': MigrationTable,
47
+ '@proteinjs/db/TransactionRunner': TransactionRunner,
49
48
  };
50
49
 
50
+
51
51
  /** Load Source Graph and Links */
52
52
 
53
53
  import { SourceRepository } from '@proteinjs/reflection';
54
54
  SourceRepository.merge(sourceGraph, sourceLinks);
55
55
 
56
- export * from '../index';
56
+
57
+ export * from '../index';