locutus
Version:
Locutus other languages' standard libraries to JavaScript for fun and educational purposes
14 lines (13 loc) • 970 B
TypeScript
import { type NumericLike, type PhpCallable, type PhpCallableArgs, type PhpCallableDescriptor, type PhpInput } from './_phpTypes.ts';
type CallbackValue = PhpInput;
interface CallbackResolverOptions {
invalidMessage: string;
missingScopeMessage?: (scopeName: string) => string;
}
interface ResolvedCallback<TArgs extends PhpCallableArgs = PhpCallableArgs, TResult = CallbackValue> {
fn: PhpCallable<TArgs, TResult>;
scope: CallbackValue;
}
export declare function resolvePhpCallable<TArgs extends PhpCallableArgs = PhpCallableArgs, TResult = CallbackValue>(callback: PhpCallableDescriptor<TArgs, TResult>, options: CallbackResolverOptions): ResolvedCallback<TArgs, TResult>;
export declare function resolveNumericComparator<TLeft extends CallbackValue = CallbackValue, TRight extends CallbackValue = CallbackValue>(callback: PhpCallableDescriptor<[TLeft, TRight], NumericLike>, invalidMessage: string): (left: TLeft, right: TRight) => number;
export {};