@squidcloud/client 1.0.156 → 1.0.157

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 (103) hide show
  1. package/dist/cjs/index.js +34447 -43361
  2. package/dist/{common/src → internal-common/src/public-types}/api-call.context.d.ts +1 -1
  3. package/dist/{common/src → internal-common/src/public-types}/application.types.d.ts +2 -1
  4. package/dist/{common/src/query → internal-common/src/public-types}/base-query-builder.d.ts +3 -3
  5. package/dist/{common/src → internal-common/src/public-types}/bundle-api.types.d.ts +12 -6
  6. package/dist/{common/src → internal-common/src/public-types}/graphql.types.d.ts +1 -1
  7. package/dist/internal-common/src/public-types/integration-types.d.ts +57 -0
  8. package/dist/{common/src → internal-common/src/public-types}/integrations/ai_chatbot.types.d.ts +2 -1
  9. package/dist/{common/src → internal-common/src/public-types}/integrations/api.types.d.ts +2 -1
  10. package/dist/{common/src → internal-common/src/public-types}/integrations/auth.types.d.ts +2 -1
  11. package/dist/{common/src → internal-common/src/public-types}/integrations/database.types.d.ts +3 -2
  12. package/dist/{common/src → internal-common/src/public-types}/integrations/observability.types.d.ts +2 -1
  13. package/dist/{common/src/integrations/index.d.ts → internal-common/src/public-types/integrations/schemas.d.ts} +2 -63
  14. package/dist/{common/src/query → internal-common/src/public-types}/query-context.d.ts +4 -4
  15. package/dist/{common/src/query → internal-common/src/public-types}/serialized-query.types.d.ts +2 -2
  16. package/dist/internal-common/src/public-utils/id-utils.d.ts +4 -0
  17. package/dist/{common → internal-common}/src/schema/schema.types.d.ts +2 -2
  18. package/dist/{common → internal-common}/src/utils/validation.d.ts +4 -2
  19. package/dist/typescript-client/src/ai-assistant-client.d.ts +1 -1
  20. package/dist/typescript-client/src/ai-chatbot-client.d.ts +1 -1
  21. package/dist/typescript-client/src/ai.types.d.ts +1 -1
  22. package/dist/typescript-client/src/api.manager.d.ts +1 -1
  23. package/dist/typescript-client/src/auth.manager.d.ts +1 -1
  24. package/dist/typescript-client/src/backend-transforms.d.ts +0 -0
  25. package/dist/typescript-client/src/client-id.service.d.ts +1 -1
  26. package/dist/typescript-client/src/collection-reference.d.ts +1 -1
  27. package/dist/typescript-client/src/collection-reference.factory.d.ts +1 -1
  28. package/dist/typescript-client/src/connection-details.d.ts +1 -1
  29. package/dist/typescript-client/src/data.manager.d.ts +2 -1
  30. package/dist/typescript-client/src/document-identity.service.d.ts +1 -1
  31. package/dist/typescript-client/src/document-reference.d.ts +1 -1
  32. package/dist/typescript-client/src/document-reference.factory.d.ts +1 -1
  33. package/dist/typescript-client/src/document-store.d.ts +1 -1
  34. package/dist/typescript-client/src/graphql-client.d.ts +1 -1
  35. package/dist/typescript-client/src/graphql-client.factory.d.ts +1 -1
  36. package/dist/typescript-client/src/index.d.ts +6 -4
  37. package/dist/typescript-client/src/mutation/mutation-sender.d.ts +2 -1
  38. package/dist/typescript-client/src/native-query-manager.d.ts +1 -1
  39. package/dist/typescript-client/src/public-types.d.ts +40 -0
  40. package/dist/typescript-client/src/public-utils.d.ts +1 -0
  41. package/dist/typescript-client/src/query/deserializer.d.ts +1 -1
  42. package/dist/typescript-client/src/query/join-query-builder.factory.d.ts +1 -1
  43. package/dist/typescript-client/src/query/query-builder.factory.d.ts +1 -1
  44. package/dist/typescript-client/src/query/query-sender.d.ts +1 -1
  45. package/dist/typescript-client/src/query/query-subscription.manager.d.ts +5 -5
  46. package/dist/typescript-client/src/query/query.types.d.ts +1 -1
  47. package/dist/typescript-client/src/rpc.manager.d.ts +1 -1
  48. package/dist/typescript-client/src/secret.client.d.ts +1 -1
  49. package/dist/typescript-client/src/socket.manager.d.ts +1 -1
  50. package/dist/typescript-client/src/squid.d.ts +1 -1
  51. package/package.json +11 -2
  52. package/dist/common/src/ai-chatbot.schemas.d.ts +0 -1
  53. package/dist/common/src/application.schemas.d.ts +0 -66
  54. package/dist/common/src/backend-function.schemas.d.ts +0 -1
  55. package/dist/common/src/index.d.ts +0 -56
  56. package/dist/common/src/mutation.schemas.d.ts +0 -1
  57. package/dist/common/src/openapi-response.d.ts +0 -1
  58. package/dist/common/src/query/index.d.ts +0 -4
  59. package/dist/common/src/secret.schemas.d.ts +0 -1
  60. package/dist/common/src/security.types.d.ts +0 -1
  61. package/dist/common/src/socket.schemas.d.ts +0 -1
  62. package/dist/common/src/time-units.d.ts +0 -1
  63. package/dist/common/src/trigger.types.d.ts +0 -1
  64. package/dist/common/src/utils/error.d.ts +0 -4
  65. package/dist/common/src/utils/id.d.ts +0 -2
  66. package/dist/common/src/utils/transforms.d.ts +0 -18
  67. package/dist/common/src/utils/url.d.ts +0 -1
  68. package/dist/common/src/webhook-response.d.ts +0 -1
  69. package/dist/{common/src → internal-common/src/public-types}/ai-assistant.types.d.ts +0 -0
  70. package/dist/{common/src → internal-common/src/public-types}/ai-chatbot.context.d.ts +0 -0
  71. package/dist/{common/src → internal-common/src/public-types}/ai-chatbot.types.d.ts +0 -0
  72. package/dist/{common/src → internal-common/src/public-types}/api.types.d.ts +0 -0
  73. package/dist/{common/src → internal-common/src/public-types}/backend-run.types.d.ts +0 -0
  74. package/dist/{common/src → internal-common/src/public-types}/bundle-data.types.d.ts +0 -0
  75. package/dist/{common/src → internal-common/src/public-types}/communication.types.d.ts +0 -0
  76. package/dist/{common/src → internal-common/src/public-types}/context.types.d.ts +0 -0
  77. package/dist/{common/src → internal-common/src/public-types}/distributed-lock.context.d.ts +0 -0
  78. package/dist/{common/src → internal-common/src/public-types}/document.types.d.ts +0 -0
  79. package/dist/{common/src → internal-common/src/public-types}/graphql.context.d.ts +0 -0
  80. package/dist/{common/src → internal-common/src/public-types}/heartbeat.types.d.ts +0 -0
  81. package/dist/{common/src → internal-common/src/public-types}/http-status.enum.d.ts +0 -0
  82. package/dist/{common/src → internal-common/src/public-types}/logger.types.d.ts +0 -0
  83. package/dist/{common/src → internal-common/src/public-types}/metrics.types.d.ts +0 -0
  84. package/dist/{common/src → internal-common/src/public-types}/mutation.context.d.ts +1 -1
  85. package/dist/{common/src → internal-common/src/public-types}/mutation.types.d.ts +0 -0
  86. package/dist/{common/src → internal-common/src/public-types}/native-query.context.d.ts +0 -0
  87. package/dist/{common/src → internal-common/src/public-types}/native-query.types.d.ts +0 -0
  88. package/dist/{common/src → internal-common/src/public-types}/openapi.types.d.ts +0 -0
  89. package/dist/{common/src/query → internal-common/src/public-types}/pagination.d.ts +0 -0
  90. package/dist/{common/src → internal-common/src/public-types}/query.types.d.ts +1 -1
  91. /package/dist/{common/src → internal-common/src/public-types}/regions.d.ts +0 -0
  92. /package/dist/{common/src → internal-common/src/public-types}/secret.types.d.ts +0 -0
  93. /package/dist/{common/src → internal-common/src/public-types}/socket.types.d.ts +0 -0
  94. /package/dist/{common/src → internal-common/src/public-types}/types.d.ts +0 -0
  95. /package/dist/{common/src → internal-common/src/types}/backend-function.types.d.ts +0 -0
  96. /package/dist/{common → internal-common}/src/utils/array.d.ts +0 -0
  97. /package/dist/{common → internal-common}/src/utils/assert.d.ts +0 -0
  98. /package/dist/{common → internal-common}/src/utils/global.utils.d.ts +0 -0
  99. /package/dist/{common → internal-common}/src/utils/http.d.ts +0 -0
  100. /package/dist/{common → internal-common}/src/utils/lock.manager.d.ts +0 -0
  101. /package/dist/{common → internal-common}/src/utils/object.d.ts +0 -0
  102. /package/dist/{common → internal-common}/src/utils/serialization.d.ts +0 -0
  103. /package/dist/{common → internal-common}/src/websocket.impl.d.ts +0 -0
@@ -1,5 +1,5 @@
1
1
  import { ApiHeaders } from './api.types';
2
- import { ApiEndpointId, HttpMethod } from './integrations';
2
+ import { ApiEndpointId, HttpMethod } from './integrations/api.types';
3
3
  /** The context of an API call. */
4
4
  export declare class ApiCallContext {
5
5
  readonly endpointId: ApiEndpointId;
@@ -1,5 +1,6 @@
1
1
  import { AppId, EnvironmentId, IntegrationId } from './communication.types';
2
- import { AuthIntegrationType, DatabaseIntegrationType, IntegrationConfig, IntegrationConfigTypes, IntegrationSchema, IntegrationSchemaKeys, IntegrationSchemaTypes, IntegrationType, IntegrationTypeWithConfig } from './integrations';
2
+ import { AuthIntegrationType, DatabaseIntegrationType, IntegrationConfig, IntegrationConfigTypes, IntegrationSchema, IntegrationSchemaKeys, IntegrationSchemaTypes, IntegrationTypeWithConfig } from './integrations/schemas';
3
+ import { IntegrationType } from './integration-types';
3
4
  /** A type alias for a string that represents a webhook. */
4
5
  export type WebhookId = string;
5
6
  /** A type alias for a string that represents a trigger id. */
@@ -1,8 +1,8 @@
1
1
  import { Observable } from 'rxjs';
2
- import { DocumentData, FieldName, PrimitiveFieldType } from '../document.types';
3
- import { Operator } from '../query.types';
4
2
  import { SerializedQuery } from './serialized-query.types';
5
- import { PaginationOptions, Pagination } from './pagination';
3
+ import { Pagination, PaginationOptions } from './pagination';
4
+ import { DocumentData, FieldName, PrimitiveFieldType } from './document.types';
5
+ import { Operator } from './query.types';
6
6
  export interface SnapshotEmitter<ReturnType> {
7
7
  /**
8
8
  * Returns a promise that resolves to the query results.
@@ -1,15 +1,15 @@
1
- import { AiChatbotActionType, DatabaseActionType } from './bundle-data.types';
2
- import { DocumentData, SquidDocId } from './document.types';
3
1
  import { MutationContext } from './mutation.context';
4
- import { MutationType } from './mutation.types';
5
- import { QueryContext } from './query';
6
2
  import { ApiCallContext } from './api-call.context';
7
3
  import { GraphqlContext } from './graphql.context';
8
4
  import { DistributedLockContext } from './distributed-lock.context';
9
- import { ClientId } from './communication.types';
10
- import { ClientConnectionState } from './socket.types';
11
5
  import { NativeQueryContext } from './native-query.context';
12
6
  import { AiChatbotChatContext, AiChatbotMutationContext } from './ai-chatbot.context';
7
+ import { QueryContext } from './query-context';
8
+ import { AiChatbotActionType, DatabaseActionType } from './bundle-data.types';
9
+ import { ClientId } from './communication.types';
10
+ import { DocumentData, SquidDocId } from './document.types';
11
+ import { MutationType } from './mutation.types';
12
+ import { ClientConnectionState } from './socket.types';
13
13
  export type SecureDatabaseAction<T extends DatabaseActionType> = T extends 'all' ? () => boolean | Promise<boolean> : T extends 'read' ? ((context: QueryContext) => boolean | Promise<boolean>) | (() => boolean | Promise<boolean>) : ((context: MutationContext) => boolean | Promise<boolean>) | (() => boolean | Promise<boolean>);
14
14
  export type SecureApiAction = ((context: ApiCallContext) => boolean | Promise<boolean>) | (() => boolean | Promise<boolean>);
15
15
  export type SecureNativeQueryAction = ((context: NativeQueryContext) => boolean | Promise<boolean>) | (() => boolean | Promise<boolean>);
@@ -38,4 +38,10 @@ export interface WebhookRequest<T = any> {
38
38
  httpMethod: 'post' | 'get' | 'put' | 'delete';
39
39
  files?: Array<SquidFile>;
40
40
  }
41
+ export interface WebhookResponse {
42
+ headers: Record<string, any>;
43
+ body: any;
44
+ statusCode: number;
45
+ __isWebhookResponse__: true;
46
+ }
41
47
  export type ActionMethodDecorator<U> = <T extends U>(target: Object, propertyName: string, descriptor: TypedPropertyDescriptor<T>) => TypedPropertyDescriptor<T>;
@@ -1,4 +1,4 @@
1
- export { ExecutionResult, IntrospectionQuery } from 'graphql';
1
+ export { type ExecutionResult, type IntrospectionQuery } from 'graphql';
2
2
  export interface GraphQLRequest {
3
3
  operationName?: string;
4
4
  query?: string;
@@ -0,0 +1,57 @@
1
+ export declare enum IntegrationCategory {
2
+ 'database' = "database",
3
+ 'api' = "api",
4
+ 'observability' = "observability",
5
+ 'crm' = "crm",
6
+ 'auth' = "auth",
7
+ 'ai' = "ai"
8
+ }
9
+ export declare enum IntegrationType {
10
+ 'built_in_db' = "built_in_db",
11
+ 'mongo' = "mongo",
12
+ 'mysql' = "mysql",
13
+ 'mssql' = "mssql",
14
+ 'postgres' = "postgres",
15
+ 'cockroach' = "cockroach",
16
+ 'api' = "api",
17
+ 'graphql' = "graphql",
18
+ 'snowflake' = "snowflake",
19
+ 'datadog' = "datadog",
20
+ 'newrelic' = "newrelic",
21
+ 'auth0' = "auth0",
22
+ 'jwt_rsa' = "jwt_rsa",
23
+ 'jwt_hmac' = "jwt_hmac",
24
+ 'ai_chatbot' = "ai_chatbot",
25
+ 'cognito' = "cognito",
26
+ 'okta' = "okta",
27
+ 'algolia' = "algolia",
28
+ 'elastic_observability' = "elastic_observability",
29
+ 'elastic_search' = "elastic_search",
30
+ 'elastic_enterprise_search' = "elastic_enterprise_search",
31
+ 'sentry' = "sentry",
32
+ 'sap_hana' = "sap_hana",
33
+ 'salesforce_crm' = "salesforce_crm",
34
+ 'documentdb' = "documentdb",
35
+ 'dynamodb' = "dynamodb",
36
+ 'cassandra' = "cassandra",
37
+ 'clickhouse' = "clickhouse",
38
+ 'alloydb' = "alloydb",
39
+ 'spanner' = "spanner",
40
+ 'db2' = "db2",
41
+ 'mariadb' = "mariadb",
42
+ 'oracledb' = "oracledb",
43
+ 'pinot' = "pinot",
44
+ 'redis' = "redis",
45
+ 'xata' = "xata",
46
+ 'azure_sql' = "azure_sql",
47
+ 'azure_postgresql' = "azure_postgresql",
48
+ 'azure_cosmosdb' = "azure_cosmosdb",
49
+ 'firestore' = "firestore",
50
+ 'bigquery' = "bigquery",
51
+ 'cloudsql' = "cloudsql"
52
+ }
53
+ export declare enum IntegrationSchemaType {
54
+ 'data' = "data",
55
+ 'api' = "api",
56
+ 'graphql' = "graphql"
57
+ }
@@ -1,6 +1,7 @@
1
+ import { BaseIntegrationConfig } from './schemas';
1
2
  import { AiModelName } from '../ai-chatbot.types';
2
3
  import { IntegrationId } from '../communication.types';
3
- import { BaseIntegrationConfig, IntegrationType } from './index';
4
+ import { IntegrationType } from '../integration-types';
4
5
  export interface AiChatbotIntegrationConfig extends BaseIntegrationConfig {
5
6
  type: IntegrationType.ai_chatbot;
6
7
  configuration: AiChatbotConfiguration;
@@ -1,6 +1,7 @@
1
1
  import { FieldName } from '../document.types';
2
2
  import { IntrospectionQuery } from '../graphql.types';
3
- import { BaseIntegrationConfig, BaseIntegrationSchema, IntegrationSchemaType, IntegrationType } from './index';
3
+ import { BaseIntegrationConfig, BaseIntegrationSchema } from './schemas';
4
+ import { IntegrationSchemaType, IntegrationType } from '../integration-types';
4
5
  export type HttpMethod = 'post' | 'get' | 'delete' | 'patch' | 'put';
5
6
  export type ApiEndpointId = string;
6
7
  export type ApiParameterLocation = 'query' | 'body' | 'header' | 'path';
@@ -1,4 +1,5 @@
1
- import { BaseIntegrationConfig, IntegrationType } from './index';
1
+ import { BaseIntegrationConfig } from './schemas';
2
+ import { IntegrationType } from '../integration-types';
2
3
  export interface Auth0IntegrationConfig extends BaseIntegrationConfig {
3
4
  type: IntegrationType.auth0;
4
5
  configuration: {
@@ -1,6 +1,7 @@
1
+ import { BaseIntegrationConfig, BaseIntegrationSchema, DatabaseIntegrationType } from './schemas';
2
+ import { CollectionSchema } from '../../schema/schema.types';
1
3
  import { CollectionName } from '../document.types';
2
- import { CollectionSchema } from '../schema/schema.types';
3
- import { BaseIntegrationConfig, BaseIntegrationSchema, DatabaseIntegrationType, IntegrationSchemaType, IntegrationType } from './index';
4
+ import { IntegrationSchemaType, IntegrationType } from '../integration-types';
4
5
  export interface MongoConnectionSecretOptions {
5
6
  password?: string;
6
7
  }
@@ -1,4 +1,5 @@
1
- import { BaseIntegrationConfig, IntegrationType } from './index';
1
+ import { BaseIntegrationConfig } from './schemas';
2
+ import { IntegrationType } from '../integration-types';
2
3
  export interface DatadogIntegrationConfig extends BaseIntegrationConfig {
3
4
  type: IntegrationType.datadog;
4
5
  configuration: DatadogIntegrationConfiguration;
@@ -1,71 +1,10 @@
1
- export * from './ai_chatbot.types';
2
- export * from './api.types';
3
- export * from './auth.types';
4
- export * from './database.types';
5
- export * from './observability.types';
6
- import { IntegrationId } from '../communication.types';
7
1
  import { AiChatbotIntegrationConfig } from './ai_chatbot.types';
8
2
  import { GraphQLIntegrationConfig, HttpApiIntegrationConfig, IntegrationApiSchema, IntegrationGraphQLSchema, TestGraphQLDataConnectionRequest } from './api.types';
9
3
  import { Auth0IntegrationConfig, CognitoIntegrationConfig, JwtHmacIntegrationConfig, JwtRsaIntegrationConfig, OktaIntegrationConfig } from './auth.types';
10
4
  import { BaseDatabaseIntegrationConfig, BigQueryIntegrationConfig, CockroachIntegrationConfig, IntegrationDataSchema, InternalIntegrationConfig, MongoIntegrationConfig, MssqlIntegrationConfig, MySqlIntegrationConfig, OracleIntegrationConfig, PinotIntegrationConfig, PostgresIntegrationConfig, SnowflakeIntegrationConfig, TestDataConnectionRequest } from './database.types';
11
5
  import { DatadogIntegrationConfig, NewRelicIntegrationConfig } from './observability.types';
12
- export declare enum IntegrationCategory {
13
- 'database' = "database",
14
- 'api' = "api",
15
- 'observability' = "observability",
16
- 'crm' = "crm",
17
- 'auth' = "auth",
18
- 'ai' = "ai"
19
- }
20
- export declare enum IntegrationType {
21
- 'built_in_db' = "built_in_db",
22
- 'mongo' = "mongo",
23
- 'mysql' = "mysql",
24
- 'mssql' = "mssql",
25
- 'postgres' = "postgres",
26
- 'cockroach' = "cockroach",
27
- 'api' = "api",
28
- 'graphql' = "graphql",
29
- 'snowflake' = "snowflake",
30
- 'datadog' = "datadog",
31
- 'newrelic' = "newrelic",
32
- 'auth0' = "auth0",
33
- 'jwt_rsa' = "jwt_rsa",
34
- 'jwt_hmac' = "jwt_hmac",
35
- 'ai_chatbot' = "ai_chatbot",
36
- 'cognito' = "cognito",
37
- 'okta' = "okta",
38
- 'algolia' = "algolia",
39
- 'elastic_observability' = "elastic_observability",
40
- 'elastic_search' = "elastic_search",
41
- 'elastic_enterprise_search' = "elastic_enterprise_search",
42
- 'sentry' = "sentry",
43
- 'sap_hana' = "sap_hana",
44
- 'salesforce_crm' = "salesforce_crm",
45
- 'documentdb' = "documentdb",
46
- 'dynamodb' = "dynamodb",
47
- 'cassandra' = "cassandra",
48
- 'clickhouse' = "clickhouse",
49
- 'alloydb' = "alloydb",
50
- 'spanner' = "spanner",
51
- 'db2' = "db2",
52
- 'mariadb' = "mariadb",
53
- 'oracledb' = "oracledb",
54
- 'pinot' = "pinot",
55
- 'redis' = "redis",
56
- 'xata' = "xata",
57
- 'azure_sql' = "azure_sql",
58
- 'azure_postgresql' = "azure_postgresql",
59
- 'azure_cosmosdb' = "azure_cosmosdb",
60
- 'firestore' = "firestore",
61
- 'bigquery' = "bigquery",
62
- 'cloudsql' = "cloudsql"
63
- }
64
- export declare enum IntegrationSchemaType {
65
- 'data' = "data",
66
- 'api' = "api",
67
- 'graphql' = "graphql"
68
- }
6
+ import { IntegrationId } from '../communication.types';
7
+ import { IntegrationSchemaType, IntegrationType } from '../integration-types';
69
8
  export interface IntegrationConfigTypes {
70
9
  [IntegrationType.built_in_db]: InternalIntegrationConfig;
71
10
  [IntegrationType.mongo]: MongoIntegrationConfig;
@@ -1,7 +1,7 @@
1
- import { IntegrationId } from '../communication.types';
2
- import { CollectionName, DocumentData } from '../document.types';
3
- import { FieldSort, Operator, Query, SimpleCondition } from '../query.types';
4
- import { DeepRecord, FieldOf, PartialBy, Paths } from '../types';
1
+ import { FieldSort, Operator, Query, SimpleCondition } from './query.types';
2
+ import { DeepRecord, FieldOf, PartialBy, Paths } from './types';
3
+ import { CollectionName, DocumentData } from './document.types';
4
+ import { IntegrationId } from './communication.types';
5
5
  export declare class QueryContext<T extends DocumentData = any> {
6
6
  readonly query: Query<T>;
7
7
  private readonly parsedConditions;
@@ -1,5 +1,5 @@
1
- import { DocumentData } from '../document.types';
2
- import { Query, Alias, JoinCondition } from '../query.types';
1
+ import { Alias, JoinCondition, Query } from './query.types';
2
+ import { DocumentData } from './document.types';
3
3
  export type SerializedSimpleQuery = {
4
4
  type: 'simple';
5
5
  query: Query;
@@ -0,0 +1,4 @@
1
+ /** Generates a UUID-style ID. */
2
+ export declare function generateId(): string;
3
+ /** Generates an ID of the given `length` using lowercase latin letters and digits.. */
4
+ export declare function generateShortId(length?: number): string;
@@ -3,7 +3,7 @@ export type FieldPlaceholder = '__SQUID_SERVER_TIMESTAMP__' | '__SQUID_CLIENT_IP
3
3
  export type BasicFieldType = 'string' | 'integer' | 'number' | 'boolean' | 'map' | 'array' | 'any';
4
4
  export type CustomFieldType = 'date' | 'json' | 'objectId';
5
5
  export type SupportedFieldType = BasicFieldType | CustomFieldType;
6
- export declare const SUPPORTED_FIELD_TYPES_ARRAY: Array<SupportedFieldType>;
6
+ export declare const SUPPORTED_FIELD_TYPES_ARRAY: readonly ["string", "integer", "number", "date", "boolean", "map", "array", "any"];
7
7
  type ConvertDeep<T extends JSONSchema> = Exclude<T, boolean> & {
8
8
  properties?: Record<string, ConvertDeep<JSONSchema>>;
9
9
  patternProperties?: Record<string, ConvertDeep<JSONSchema>>;
@@ -11,7 +11,7 @@ type ConvertDeep<T extends JSONSchema> = Exclude<T, boolean> & {
11
11
  /**
12
12
  * The default value will be applied (default to 'empty'):
13
13
  * 'always' - no matter what the client sent, both on update and insert. In case of readOnly - applies only on insert.
14
- * 'empty' - only if the value of the filed is empty (undefined)
14
+ * 'empty' - only if the value of the field is empty (undefined)
15
15
  * 'updateOrEmpty' - no matter what the client sent, updating the record will use the default value
16
16
  */
17
17
  applyDefaultValueOn?: 'always' | 'empty' | 'updateOrEmpty';
@@ -1,11 +1,13 @@
1
- import { OpenIdProvider } from '../application.types';
2
- import { HttpStatus } from '../http-status.enum';
1
+ import { HttpStatus } from '../public-types/http-status.enum';
2
+ import { OpenIdProvider } from '../public-types/application.types';
3
3
  export type StatusCode = HttpStatus.BAD_REQUEST | HttpStatus.NOT_FOUND | HttpStatus.FORBIDDEN | HttpStatus.UNAUTHORIZED | HttpStatus.CONFLICT;
4
4
  export declare class ValidationError extends Error {
5
5
  readonly statusCode: StatusCode;
6
6
  readonly details?: any;
7
7
  constructor(error: string, statusCode: StatusCode, details?: Record<string, any>);
8
8
  }
9
+ export declare function isValidId(id: unknown): boolean;
10
+ export declare function validateId(id: unknown, message: string): void;
9
11
  export declare function validateFieldSort(fieldSort: any): void;
10
12
  export declare function validateOpenIdProvider(openIdProvider: OpenIdProvider | undefined): OpenIdProvider;
11
13
  export declare function validateOpenIdProviderType(providerType: any): void;
@@ -1,5 +1,5 @@
1
+ import { AssistantToolType, FunctionName } from './public-types';
1
2
  import { RpcManager } from './rpc.manager';
2
- import { AssistantToolType, FunctionName } from '@squidcloud/common';
3
3
  import { BlobAndFilename } from './types';
4
4
  /**
5
5
  * Client class for interacting with an AI Assistant server.
@@ -1,4 +1,4 @@
1
- import { AiChatbotChatOptions, AiChatbotContext, AiModelName, IntegrationId } from '@squidcloud/common';
1
+ import { AiChatbotChatOptions, AiChatbotContext, AiModelName, IntegrationId } from './public-types';
2
2
  import { Observable } from 'rxjs';
3
3
  import { RpcManager } from './rpc.manager';
4
4
  import { SocketManager } from './socket.manager';
@@ -1,8 +1,8 @@
1
- import { IntegrationId } from '@squidcloud/common';
2
1
  import { AiChatbotClient } from './ai-chatbot-client';
3
2
  import { AiChatbotClientFactory } from './ai-chatbot-client.factory';
4
3
  import { RpcManager } from './rpc.manager';
5
4
  import { AiAssistantClient } from './ai-assistant-client';
5
+ import { IntegrationId } from './public-types';
6
6
  export interface ExecuteAiQueryRequest {
7
7
  integrationId: IntegrationId;
8
8
  prompt: string;
@@ -1,7 +1,7 @@
1
- import { ApiEndpointId, IntegrationId } from '@squidcloud/common';
2
1
  import { Observable } from 'rxjs';
3
2
  import { RpcManager } from './rpc.manager';
4
3
  import { ClientIdService } from './client-id.service';
4
+ import { ApiEndpointId, IntegrationId } from './public-types';
5
5
  export declare class ApiManager {
6
6
  private readonly clientIdService;
7
7
  private readonly rpcManager;
@@ -1,5 +1,5 @@
1
- import { ApiKey, AuthToken, IntegrationId } from '@squidcloud/common';
2
1
  import { SquidAuthProvider } from './squid';
2
+ import { ApiKey, AuthToken, IntegrationId } from './public-types';
3
3
  /** Holds authentication token for the specified integration. */
4
4
  export interface AuthData {
5
5
  token: string | undefined;
@@ -1,6 +1,6 @@
1
1
  import { Observable } from 'rxjs';
2
- import { ClientId } from '@squidcloud/common';
3
2
  import { DestructManager } from './destruct.manager';
3
+ import { ClientId } from './public-types';
4
4
  /**
5
5
  * Whenever a squid client is created, it assigns itself a client id.
6
6
  * Later on, if the squid client disconnects for a specified time interval, it will generate itself a new client id.
@@ -1,4 +1,4 @@
1
- import { Alias, DocId, DocIdObj, DocumentData, SnapshotEmitter } from '@squidcloud/common';
1
+ import { Alias, DocId, DocIdObj, DocumentData, SnapshotEmitter } from './public-types';
2
2
  import { DocumentReference } from './document-reference';
3
3
  import { JoinQueryBuilder } from './query/join-query-builder.factory';
4
4
  import { QueryBuilder } from './query/query-builder.factory';
@@ -1,8 +1,8 @@
1
- import { CollectionName, DocumentData, IntegrationId } from '@squidcloud/common';
2
1
  import { CollectionReference } from './collection-reference';
3
2
  import { DocumentReferenceFactory } from './document-reference.factory';
4
3
  import { QueryBuilderFactory } from './query/query-builder.factory';
5
4
  import { QuerySubscriptionManager } from './query/query-subscription.manager';
5
+ import { CollectionName, DocumentData, IntegrationId } from './public-types';
6
6
  export declare class CollectionReferenceFactory {
7
7
  private readonly documentReferenceFactory;
8
8
  private readonly queryBuilderFactory;
@@ -1,5 +1,5 @@
1
- import { ClientId } from '@squidcloud/common';
2
1
  import { Observable } from 'rxjs';
2
+ import { ClientId } from './public-types';
3
3
  /**
4
4
  * Provides information about the connection to the Squid Server.
5
5
  */
@@ -1,4 +1,4 @@
1
- import { DocTimestamp, LockManager, Mutation, SquidDocId, SquidDocument } from '@squidcloud/common';
1
+ import { DocTimestamp, Mutation, SquidDocId, SquidDocument } from './public-types';
2
2
  import { DestructManager } from './destruct.manager';
3
3
  import DocumentIdentityService from './document-identity.service';
4
4
  import { DocumentStore } from './document-store';
@@ -8,6 +8,7 @@ import { QuerySender } from './query/query-sender';
8
8
  import { QuerySubscriptionManager } from './query/query-subscription.manager';
9
9
  import { SocketManager } from './socket.manager';
10
10
  import { TransactionId } from './types';
11
+ import { LockManager } from '@squidcloud/internal-common/utils/lock.manager';
11
12
  export interface DocTimestampMetadata {
12
13
  timestamp: DocTimestamp;
13
14
  expireTimestamp?: number;
@@ -1,7 +1,7 @@
1
- import { IdResolutionMap } from '@squidcloud/common';
2
1
  import { Observable } from 'rxjs';
3
2
  import { DestructManager } from './destruct.manager';
4
3
  import { DocumentStore } from './document-store';
4
+ import { IdResolutionMap } from './public-types';
5
5
  export default class DocumentIdentityService {
6
6
  private readonly documentStore;
7
7
  private readonly destructManager;
@@ -1,4 +1,4 @@
1
- import { DeepRecord, DocumentData, Paths } from '@squidcloud/common';
1
+ import { DeepRecord, DocumentData, Paths } from './public-types';
2
2
  import { Observable } from 'rxjs';
3
3
  import { TransactionId } from './types';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { SquidDocId } from '@squidcloud/common';
1
+ import { SquidDocId } from './public-types';
2
2
  import { DataManager } from './data.manager';
3
3
  import DocumentIdentityService from './document-identity.service';
4
4
  import { DocumentReference } from './document-reference';
@@ -1,4 +1,4 @@
1
- import { FieldType, Query, SquidDocId, SquidDocument } from '@squidcloud/common';
1
+ import { FieldType, Query, SquidDocId, SquidDocument } from './public-types';
2
2
  export declare class DocumentStore {
3
3
  private readonly squidDocIdToDoc;
4
4
  saveDocument(squidDocId: SquidDocId, properties: SquidDocument | undefined): SquidDocument | undefined;
@@ -1,5 +1,5 @@
1
- import { GraphQLRequest, IntegrationId, SupportedSquidRegion } from '@squidcloud/common';
2
1
  import { RpcManager } from './rpc.manager';
2
+ import { GraphQLRequest, IntegrationId, SupportedSquidRegion } from './public-types';
3
3
  /** A GraphQL client that can be used to query and mutate data. */
4
4
  export declare class GraphQLClient {
5
5
  private readonly rpcManager;
@@ -1,6 +1,6 @@
1
- import { IntegrationId, SupportedSquidRegion } from '@squidcloud/common';
2
1
  import { GraphQLClient } from './graphql-client';
3
2
  import { RpcManager } from './rpc.manager';
3
+ import { IntegrationId, SupportedSquidRegion } from './public-types';
4
4
  export declare class GraphQLClientFactory {
5
5
  private readonly rpcManager;
6
6
  private readonly region;
@@ -1,9 +1,11 @@
1
+ export * from './public-types';
2
+ export * from './public-utils';
3
+ export { AiChatbotProfileReference } from './ai-chatbot-client';
4
+ export { Changes, QueryBuilder } from './query/query-builder.factory';
1
5
  export { CollectionReference } from './collection-reference';
2
6
  export { DocumentReference } from './document-reference';
7
+ export { GraphQLClient } from './graphql-client';
3
8
  export { JoinQueryBuilder } from './query/join-query-builder.factory';
4
- export { Changes, QueryBuilder } from './query/query-builder.factory';
5
- export { deserializeQuery } from './query/deserializer';
6
9
  export { Squid, SquidOptions } from './squid';
7
10
  export { TransactionId } from './types';
8
- export { GraphQLClient } from './graphql-client';
9
- export { AiChatbotProfileReference } from './ai-chatbot-client';
11
+ export { deserializeQuery } from './query/deserializer';
@@ -1,6 +1,7 @@
1
- import { IntegrationId, LockManager, MutateResponse, Mutation } from '@squidcloud/common';
2
1
  import { RpcManager } from '../rpc.manager';
3
2
  import { QuerySender } from '../query/query-sender';
3
+ import { LockManager } from '@squidcloud/internal-common/utils/lock.manager';
4
+ import { IntegrationId, MutateResponse, Mutation } from '../public-types';
4
5
  export declare class MutationSender {
5
6
  private readonly rpcManager;
6
7
  private readonly lockManager;
@@ -1,5 +1,5 @@
1
- import { IntegrationId, NativeQueryRequest } from '@squidcloud/common';
2
1
  import { RpcManager } from './rpc.manager';
2
+ import { IntegrationId, NativeQueryRequest } from './public-types';
3
3
  export declare class NativeQueryManager {
4
4
  private readonly rpcManager;
5
5
  constructor(rpcManager: RpcManager);
@@ -0,0 +1,40 @@
1
+ export * from '../../internal-common/src/public-types/ai-assistant.types';
2
+ export * from '../../internal-common/src/public-types/ai-chatbot.context';
3
+ export * from '../../internal-common/src/public-types/ai-chatbot.types';
4
+ export * from '../../internal-common/src/public-types/api-call.context';
5
+ export * from '../../internal-common/src/public-types/api.types';
6
+ export * from '../../internal-common/src/public-types/application.types';
7
+ export * from '../../internal-common/src/public-types/backend-run.types';
8
+ export * from '../../internal-common/src/public-types/base-query-builder';
9
+ export * from '../../internal-common/src/public-types/bundle-api.types';
10
+ export * from '../../internal-common/src/public-types/bundle-data.types';
11
+ export * from '../../internal-common/src/public-types/communication.types';
12
+ export * from '../../internal-common/src/public-types/context.types';
13
+ export * from '../../internal-common/src/public-types/distributed-lock.context';
14
+ export * from '../../internal-common/src/public-types/document.types';
15
+ export * from '../../internal-common/src/public-types/graphql.context';
16
+ export * from '../../internal-common/src/public-types/graphql.types';
17
+ export * from '../../internal-common/src/public-types/heartbeat.types';
18
+ export * from '../../internal-common/src/public-types/http-status.enum';
19
+ export * from '../../internal-common/src/public-types/integration-types';
20
+ export * from '../../internal-common/src/public-types/integrations/ai_chatbot.types';
21
+ export * from '../../internal-common/src/public-types/integrations/api.types';
22
+ export * from '../../internal-common/src/public-types/integrations/auth.types';
23
+ export * from '../../internal-common/src/public-types/integrations/database.types';
24
+ export * from '../../internal-common/src/public-types/integrations/observability.types';
25
+ export * from '../../internal-common/src/public-types/integrations/schemas';
26
+ export * from '../../internal-common/src/public-types/logger.types';
27
+ export * from '../../internal-common/src/public-types/metrics.types';
28
+ export * from '../../internal-common/src/public-types/mutation.context';
29
+ export * from '../../internal-common/src/public-types/mutation.types';
30
+ export * from '../../internal-common/src/public-types/native-query.context';
31
+ export * from '../../internal-common/src/public-types/native-query.types';
32
+ export * from '../../internal-common/src/public-types/openapi.types';
33
+ export * from '../../internal-common/src/public-types/pagination';
34
+ export * from '../../internal-common/src/public-types/query-context';
35
+ export * from '../../internal-common/src/public-types/query.types';
36
+ export * from '../../internal-common/src/public-types/regions';
37
+ export * from '../../internal-common/src/public-types/secret.types';
38
+ export * from '../../internal-common/src/public-types/serialized-query.types';
39
+ export * from '../../internal-common/src/public-types/socket.types';
40
+ export * from '../../internal-common/src/public-types/types';
@@ -0,0 +1 @@
1
+ export * from '../../internal-common/src/public-utils/id-utils';
@@ -1,3 +1,3 @@
1
- import { SerializedQuery, SnapshotEmitter } from '@squidcloud/common';
2
1
  import { Squid } from '../squid';
2
+ import { SerializedQuery, SnapshotEmitter } from '../public-types';
3
3
  export declare function deserializeQuery<ReturnType = any>(squid: Squid, serializedQuery: SerializedQuery): SnapshotEmitter<ReturnType>;
@@ -1,7 +1,7 @@
1
- import { Alias, BaseQueryBuilder, DocumentData, FieldName, FieldSort, HasDereference, Operator, Pagination, PaginationOptions, PrimitiveFieldType, SerializedJoinQuery, SimpleCondition, SnapshotEmitter } from '@squidcloud/common';
2
1
  import { Observable } from 'rxjs';
3
2
  import { DocumentReference } from '../document-reference';
4
3
  import { QueryBuilder } from './query-builder.factory';
4
+ import { Alias, BaseQueryBuilder, DocumentData, FieldName, FieldSort, HasDereference, Operator, Pagination, PaginationOptions, PrimitiveFieldType, SerializedJoinQuery, SimpleCondition, SnapshotEmitter } from '../public-types';
5
5
  type WithDocumentReferences<T extends Record<any, DocumentData>> = {
6
6
  [k in keyof T]: DocumentReference<Required<T>[k]>;
7
7
  };
@@ -1,6 +1,6 @@
1
- import { BaseQueryBuilder, DocumentData, FieldName, FieldSort, HasDereference, Operator, Pagination, PaginationOptions, PrimitiveFieldType, SerializedSimpleQuery, SimpleCondition, SnapshotEmitter } from '@squidcloud/common';
2
1
  import { Observable } from 'rxjs';
3
2
  import { DocumentReference } from '../document-reference';
3
+ import { BaseQueryBuilder, DocumentData, FieldName, FieldSort, HasDereference, Operator, Pagination, PaginationOptions, PrimitiveFieldType, SerializedSimpleQuery, SimpleCondition, SnapshotEmitter } from '../public-types';
4
4
  /** A query builder that can be used to build a query that returns a list of documents. */
5
5
  export declare class QueryBuilder<DocumentType extends DocumentData> extends BaseQueryBuilder<DocumentType> implements SnapshotEmitter<DocumentReference<DocumentType>>, HasDereference {
6
6
  private readonly collectionName;
@@ -1,7 +1,7 @@
1
1
  import { RpcManager } from '../rpc.manager';
2
- import { QueryRequest, QueryResultData } from '@squidcloud/common';
3
2
  import { BehaviorSubject } from 'rxjs';
4
3
  import { DestructManager } from '../destruct.manager';
4
+ import { QueryRequest, QueryResultData } from '../public-types';
5
5
  export declare class QuerySender {
6
6
  private readonly rpcManager;
7
7
  private readonly destructManager;
@@ -1,12 +1,12 @@
1
- import { Alias, ClientRequestId, JoinCondition, Query, QueryResultData, QuerySubscriptionId, SquidDocId, SquidDocument } from '@squidcloud/common';
2
1
  import { Observable, Subject } from 'rxjs';
3
- import { ClientIdService } from '../client-id.service';
4
- import { DestructManager } from '../destruct.manager';
5
- import DocumentIdentityService from '../document-identity.service';
6
- import { DocumentStore } from '../document-store';
7
2
  import { RpcManager } from '../rpc.manager';
8
3
  import { QuerySender } from './query-sender';
9
4
  import { OngoingQuery } from './query.types';
5
+ import { Alias, ClientRequestId, JoinCondition, Query, QueryResultData, QuerySubscriptionId, SquidDocId, SquidDocument } from '../public-types';
6
+ import { ClientIdService } from '../client-id.service';
7
+ import { DocumentStore } from '../document-store';
8
+ import { DestructManager } from '../destruct.manager';
9
+ import DocumentIdentityService from '../document-identity.service';
10
10
  export declare const FETCH_BEYOND_LIMIT = 100;
11
11
  export declare const LIMIT_UNDERFLOW_TRIGGER = 20;
12
12
  export declare class QuerySubscriptionManager {
@@ -1,5 +1,5 @@
1
- import { Alias, ClientRequestId, JoinCondition, Query, SquidDocument } from '@squidcloud/common';
2
1
  import { BehaviorSubject, Observable, ReplaySubject } from 'rxjs';
2
+ import { Alias, ClientRequestId, JoinCondition, Query, SquidDocument } from '../public-types';
3
3
  export interface OngoingQuery {
4
4
  clientRequestId: ClientRequestId;
5
5
  query: Query;