type AnyFunction = (...args: any[]) => any;
type AnyConfig = Record<string, any>;
interface IExecutable<TConfig extends AnyConfig | null = AnyConfig | null> {
    execute<TFunc extends AnyFunction>(config: TConfig, func: TFunc, ...args: Parameters<TFunc>): unknown;
}
export { type IExecutable };
