UNPKG

@speckle/shared

Version:

Shared code between various Speckle JS packages

367 lines 13.3 kB
import { z } from 'zod'; import * as Knex from 'knex'; import { Logger } from 'pino'; export declare const regionConfigSchema: z.ZodObject<{ postgres: z.ZodObject<{ connectionUri: z.ZodString; databaseName: z.ZodOptional<z.ZodString>; privateConnectionUri: z.ZodOptional<z.ZodString>; publicTlsCertificate: z.ZodOptional<z.ZodString>; skipInitialization: z.ZodEffects<z.ZodOptional<z.ZodBoolean>, boolean | undefined, boolean | undefined>; }, "strip", z.ZodTypeAny, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }>; blobStorage: z.ZodObject<{ endpoint: z.ZodString; publicEndpoint: z.ZodOptional<z.ZodString>; accessKey: z.ZodString; secretKey: z.ZodString; bucket: z.ZodString; createBucketIfNotExists: z.ZodBoolean; s3Region: z.ZodString; }, "strip", z.ZodTypeAny, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }>; }, "strip", z.ZodTypeAny, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }>; declare const multiRegionConfigSchema: z.ZodObject<{ main: z.ZodObject<{ postgres: z.ZodObject<{ connectionUri: z.ZodString; databaseName: z.ZodOptional<z.ZodString>; privateConnectionUri: z.ZodOptional<z.ZodString>; publicTlsCertificate: z.ZodOptional<z.ZodString>; skipInitialization: z.ZodEffects<z.ZodOptional<z.ZodBoolean>, boolean | undefined, boolean | undefined>; }, "strip", z.ZodTypeAny, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }>; blobStorage: z.ZodObject<{ endpoint: z.ZodString; publicEndpoint: z.ZodOptional<z.ZodString>; accessKey: z.ZodString; secretKey: z.ZodString; bucket: z.ZodString; createBucketIfNotExists: z.ZodBoolean; s3Region: z.ZodString; }, "strip", z.ZodTypeAny, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }>; }, "strip", z.ZodTypeAny, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }>; regions: z.ZodRecord<z.ZodString, z.ZodObject<{ postgres: z.ZodObject<{ connectionUri: z.ZodString; databaseName: z.ZodOptional<z.ZodString>; privateConnectionUri: z.ZodOptional<z.ZodString>; publicTlsCertificate: z.ZodOptional<z.ZodString>; skipInitialization: z.ZodEffects<z.ZodOptional<z.ZodBoolean>, boolean | undefined, boolean | undefined>; }, "strip", z.ZodTypeAny, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }, { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }>; blobStorage: z.ZodObject<{ endpoint: z.ZodString; publicEndpoint: z.ZodOptional<z.ZodString>; accessKey: z.ZodString; secretKey: z.ZodString; bucket: z.ZodString; createBucketIfNotExists: z.ZodBoolean; s3Region: z.ZodString; }, "strip", z.ZodTypeAny, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }, { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }>; }, "strip", z.ZodTypeAny, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }>>; defaultProjectRegionKey: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { main: { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }; regions: Record<string, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }>; defaultProjectRegionKey?: string | null | undefined; }, { main: { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }; regions: Record<string, { postgres: { connectionUri: string; databaseName?: string | undefined; privateConnectionUri?: string | undefined; publicTlsCertificate?: string | undefined; skipInitialization?: boolean | undefined; }; blobStorage: { endpoint: string; accessKey: string; secretKey: string; bucket: string; createBucketIfNotExists: boolean; s3Region: string; publicEndpoint?: string | undefined; }; }>; defaultProjectRegionKey?: string | null | undefined; }>; export type MultiRegionConfig = z.infer<typeof multiRegionConfigSchema>; export type MainRegionConfig = MultiRegionConfig['main']; export type DataRegionsConfig = MultiRegionConfig['regions']; export type RegionServerConfig = z.infer<typeof regionConfigSchema>; export type BlobStorageConfig = RegionServerConfig['blobStorage']; export declare const loadMultiRegionsConfig: ({ path }: { path: string; }) => Promise<MultiRegionConfig>; export type KnexConfigArgs = { migrationDirs: string[]; /** * Override migration source loader to load migrations a custom way */ migrationSource?: any; isTestEnv?: boolean; isDevOrTestEnv?: boolean; isDevEnv?: boolean; logger: Logger; maxConnections: number; applicationName: string; connectionAcquireTimeoutMillis: number; connectionCreateTimeoutMillis: number; /** * If set to any value - true or false - will explicitly enable or disable async stack traces * that show where queries are launched from. If not set, will default to true in dev * and test environments */ asyncStackTraces?: boolean; }; export declare const createKnexConfig: ({ connectionString, migrationDirs, isTestEnv, isDevOrTestEnv, logger, maxConnections, caCertificate, connectionAcquireTimeoutMillis, connectionCreateTimeoutMillis, asyncStackTraces, migrationSource }: { connectionString?: string | undefined; caCertificate?: string | undefined; } & KnexConfigArgs) => Knex.Knex.Config; export declare const configureKnexClient: (config: Pick<RegionServerConfig, "postgres">, configArgs: KnexConfigArgs) => { public: Knex.Knex; private?: Knex.Knex; }; export declare const getConnectionSettings: (knex: Knex.Knex) => { connectionString?: string; ssl?: boolean; application_name?: string; }; export declare const obfuscateConnectionString: (connectionString: string) => string; export {}; //# sourceMappingURL=db.d.ts.map