import type { Bud } from '@roots/bud-framework'; type Parameters = Array; export interface Callable { (...value: Parameters): I; } export type MaybeCallable = ((...params: P) => T) | Exclude; interface maybeCall { (value: ((bud: T) => T) | Exclude): T; (value: ((...params: P) => T) | Exclude, ...params: P): T; } /** * Calls a given value if it is a function. The function will be bound to * Budbefore it is called. * * If it is not a function, returns the value without doing anything to it. * * @typeParam I - Type of the value expected to be returned */ declare const maybeCall: maybeCall; export { maybeCall };