import { conversion } from "@huz-com/types"; export declare type LambdaAsync = (...args: Array) => Promise; export declare type LambdaSync = (...args: Array) => R; export declare type LambdaAny = LambdaSync | LambdaAsync; export declare type CallbackNameFn = (clazz: string) => string; export interface CallbackContextDefaults { defaultLanguage: string; currentLanguage: string; managedLanguages: string; availableLanguages: string; initialLanguages: string; currentProject: string; currentCode: string; currentCountry: string; currentTimezone: string; currentApplication: string; } export declare enum CallbackPromiseEnum { ALL = "all", SYNC = "sync", ASYNC = "async" } export interface CallbackRepository> { bucket: string; get(clazz: string, onlySync?: boolean, throwable?: boolean): F | Array; has(clazz: string): boolean; add(clazz: string | Array, fn: F, throwable?: boolean): void; lambda(clazz: string): F | Array; } export interface CallbackChannelAdd { classes?: Array; source?: conversion.Source; throwable?: boolean; holder?: CallbackRepository; name?: string; lambda?: CallbackNameFn; }