import type { Sequelize, Model, ModelStatic } from 'sequelize'; import type { KythiaConfig } from './KythiaConfig'; import type { KythiaClient } from './KythiaClient'; import type { KythiaLogger } from './KythiaLogger'; import type { IAddonManager } from './AddonManager'; import type { IInteractionManager } from './InteractionManager'; import type { IShutdownManager } from './ShutdownManager'; import type { IEventManager } from './EventManager'; import type { IMiddlewareManager } from './MiddlewareManager'; import type { ITranslatorManager, TranslateFunction } from './TranslatorManager'; import type Redis from 'ioredis'; import type { DiscordHelpers } from './DiscordHelpers'; import type { KythiaEngine } from '../managers/KythiaEngine'; import type { MetricsManager } from '../managers/MetricsManager'; import type { QueueManager } from '../managers/QueueManager'; export type AnySequelizeModel = ModelStatic, Record>>; export type KythiaModelsCollection = Record; export interface KythiaHelpersCollection { discord: DiscordHelpers; [key: string]: unknown; } export type TranslationVars = Record; export interface KythiaContainer { client: KythiaClient; sequelize?: Sequelize; kythiaConfig: KythiaConfig; logger: KythiaLogger; engine?: KythiaEngine; engineToken?: string | null; metrics?: MetricsManager; redis?: Redis; t: TranslateFunction; translator?: ITranslatorManager; middlewareManager?: IMiddlewareManager; interactionManager?: IInteractionManager; addonManager?: IAddonManager; eventManager?: IEventManager; shutdownManager?: IShutdownManager; queueManager?: QueueManager; addons?: IAddonManager; models: KythiaModelsCollection; helpers: KythiaHelpersCollection; appRoot: string; readonly _degraded?: boolean; } //# sourceMappingURL=KythiaContainer.d.ts.map