import type { PartialOrUndefined, StrictRequiredBy } from '@sequelize/utils'; import type { Connection } from './abstract-dialect/connection-manager.js'; import type { AbstractDialect, ConnectionOptions, DialectOptions } from './abstract-dialect/dialect.js'; import type { ReplicationPoolOptions } from './abstract-dialect/replication-pool.js'; import type { EphemeralSequelizeOptions, PersistedSequelizeOptions } from './sequelize.internals.js'; import type { NormalizedReplicationOptions } from './sequelize.js'; /** * Connection Pool options. * * Used in {@link SequelizeCoreOptions.pool} */ export interface PoolOptions extends PartialOrUndefined { /** * A function that validates a connection. * * If provided, this overrides the default connection validation built in to sequelize. */ validate?: ((connection?: Connection) => boolean) | undefined; } /** * Options of the {@link Sequelize} constructor used by the core library. * * See {@link Options} for the full list of options, including those dialect-specific. */ interface SequelizeCoreOptions extends PersistedSequelizeOptions, EphemeralSequelizeOptions { } /** * Options for the constructor of the {@link Sequelize} main class. */ export type Options = SequelizeCoreOptions & Omit, keyof SequelizeCoreOptions> & Omit, keyof SequelizeCoreOptions>; export type NormalizedOptions = StrictRequiredBy, 'replication'>, 'transactionType' | 'noTypeValidation' | 'timezone' | 'disableClsTransactions' | 'defaultTransactionNestMode' | 'defaultTimestampPrecision'> & { replication: NormalizedReplicationOptions; }; export {}; //# sourceMappingURL=sequelize.types.d.ts.map