import type { GDpluginHandlerEventNames } from './GDplugin.js'; import GDmanagedLogin from './GDmanagedLogin/main.js'; import GDdoubleAuthentication from './GDdoubleAuthentication/main.js'; import GDapiKeyAuthentication from './GDapiKeyAuthentication/main.js'; import { ServiceGeneric } from '../types/services.types.js'; import { type NewPluginConfig } from './newPlugin.js'; import { GoodCopNextDefinition } from '../lib/good-cop/definitionTypes.js'; export type PluginNames = typeof GDmanagedLogin.name | typeof GDdoubleAuthentication.name | typeof GDapiKeyAuthentication.name; export declare const allPluginConfigs: { GDdoubleAuthentication: NewPluginConfig<"GDdoubleAuthentication", import("./GDdoubleAuthentication/config.js").PluginUserConfig, typeof import("./GDdoubleAuthentication/main.js").GDdoubleAuthentication>; GDmanagedLogin: NewPluginConfig<"GDmanagedLogin", import("./GDmanagedLogin/config.js").PluginUserConfig, typeof import("./GDmanagedLogin/GDmanagedLogin.js").GDmanagedLogin>; GDapiKeyAuthentication: NewPluginConfig<"GDapiKeyAuthentication", import("./GDapiKeyAuthentication/main.js").PluginUserConfig, typeof import("./GDapiKeyAuthentication/main.js").GDapiKeyAuthentication>; }; type AllPluginConfig = typeof allPluginConfigs; export type InstanciatedPlugin = InstanceType; /** Register a plugin from appConfig to be used in app */ export declare function registerPlugin(plugin: InstanciatedPlugin): void; export declare function initPlugins(): void; export declare function getPlugin(name: T): InstanceType<(typeof allPluginConfigs)[T]["plugin"]> | null; /** Will return plugin config if registered or default config otherwise */ export declare function getPluginConfig(name: T): InstanceType<(typeof allPluginConfigs)[T]["plugin"]>["config"]; export declare function getAllPluginServices(): { [x: string]: import("../types/services.types.js").ServiceClean, import("../lib/good-cop/definitionTypes.js").GenericDef>> | ServiceGeneric; }; export declare function getPluginHook(eventName: GDpluginHandlerEventNames): import("./GDplugin.js").GDpluginHandlers[]; export declare function getPluginAdditionalUserFields(): { [x: string]: import("../lib/good-cop/definitionTypes.js").GenericDef | import("../lib/good-cop/definitionTypes.js").GenericDef[] | GoodCopNextDefinition; } | { email: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; newEmail: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; phonePrefix: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").TypedExclude>; phoneWithPrefix: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; newPhonePrefix: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").TypedExclude>; newPhoneWithPrefix: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; password: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; validationTokens: GoodCopNextDefinition, "length" | "minLength" | "maxLength">; refreshTokens: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>[]; accessTokens: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>[]; lastPasswordCompareTime: GoodCopNextDefinition, never>; passwordRetrialNb: GoodCopNextDefinition, "gt" | "lt" | "lte" | "gte" | "round2" | "between" | "greaterThan" | "lessThan" | "max" | "min" | "positive">; } | { pinCode: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; pinCodeRetrialNb: GoodCopNextDefinition, "gt" | "lt" | "lte" | "gte" | "round2" | "between" | "greaterThan" | "lessThan" | "max" | "min" | "positive">; lastPincodeCompareTime: GoodCopNextDefinition, never>; biometricAuthToken: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; biometricAuthRetrialNb: GoodCopNextDefinition, "gt" | "lt" | "lte" | "gte" | "round2" | "between" | "greaterThan" | "lessThan" | "max" | "min" | "positive">; lastBiometricCompareTime: GoodCopNextDefinition, never>; _2FAcode: GoodCopNextDefinition, import("../lib/good-cop/definitionTypes.js").GoodCopStringMethods>; _2FAretrialNb: GoodCopNextDefinition, "gt" | "lt" | "lte" | "gte" | "round2" | "between" | "greaterThan" | "lessThan" | "max" | "min" | "positive">; last2FACompareTime: GoodCopNextDefinition, never>; }; export {};