import { FunctionArguments, AnyFunction } from './types.js'; declare type MaybeFunction = T | ((...args: Args) => T); declare function runIfFn(valueOrFn: T | ((...fnArgs: U[]) => T), ...args: U[]): T; declare function callAllHandlers void>(...fns: (T | undefined)[]): (event: FunctionArguments[0]) => void; declare function callAll(...fns: (T | undefined)[]): (arg: FunctionArguments[0]) => void; declare const compose: (fn1: (...args: T[]) => T, ...fns: ((...args: T[]) => T)[]) => (...args: T[]) => T; declare function once(fn?: T | null): (this: any, ...args: Parameters) => any; declare const noop: () => void; declare type MessageOptions = { condition: boolean; message: string; }; declare const warn: (this: any, options: MessageOptions) => any; declare const error: (this: any, options: MessageOptions) => any; declare const pipe: (...fns: ((a: R) => R)[]) => (v: R) => R; declare type Point = { x: number; y: number; }; declare function distance

(a: P, b: P): number; export { MaybeFunction, callAll, callAllHandlers, compose, distance, error, noop, once, pipe, runIfFn, warn };