declare const PLACEHOLDER: { __ut2_partial_ph__: null; }; type Placeholder = typeof PLACEHOLDER; type Function0 = () => R; type Function1 = (t1: T1) => R; type Function2 = (t1: T1, t2: T2) => R; type Function3 = (t1: T1, t2: T2, t3: T3) => R; type Function4 = (t1: T1, t2: T2, t3: T3, t4: T4) => R; interface Partial { (func: Function2, plc1: Placeholder, arg2: T2): Function1; (func: Function2, arg1: T1, arg2: T2): Function0; (func: Function3, plc1: Placeholder, arg2: T2): Function2; (func: Function3, plc1: Placeholder, plc2: Placeholder, arg3: T3): Function2; (func: Function3, arg1: T1, plc2: Placeholder, arg3: T3): Function1; (func: Function3, plc1: Placeholder, arg2: T2, arg3: T3): Function1; (func: Function3, arg1: T1, arg2: T2, arg3: T3): Function0; (func: Function4, plc1: Placeholder, arg2: T2): Function3; (func: Function4, plc1: Placeholder, plc2: Placeholder, arg3: T3): Function3; (func: Function4, arg1: T1, plc2: Placeholder, arg3: T3): Function2; (func: Function4, plc1: Placeholder, arg2: T2, arg3: T3): Function2; (func: Function4, arg1: T1, arg2: T2, arg3: T3): Function1; (func: Function4, plc1: Placeholder, plc2: Placeholder, plc3: Placeholder, arg4: T4): Function3; (func: Function4, arg1: T1, plc2: Placeholder, plc3: Placeholder, arg4: T4): Function2; (func: Function4, plc1: Placeholder, arg2: T2, plc3: Placeholder, arg4: T4): Function2; (func: Function4, arg1: T1, arg2: T2, plc3: Placeholder, arg4: T4): Function1; (func: Function4, plc1: Placeholder, plc2: Placeholder, arg3: T3, arg4: T4): Function2; (func: Function4, arg1: T1, plc2: Placeholder, arg3: T3, arg4: T4): Function1; (func: Function4, plc1: Placeholder, arg2: T2, arg3: T3, arg4: T4): Function1; (func: Function4, arg1: T1, arg2: T2, arg3: T3, arg4: T4): Function0; (func: (...ts: TS) => R): (...ts: TS) => R; (func: (t1: T1, ...ts: TS) => R, arg1: T1): (...ts: TS) => R; (func: (t1: T1, t2: T2, ...ts: TS) => R, t1: T1, t2: T2): (...ts: TS) => R; (func: (t1: T1, t2: T2, t3: T3, ...ts: TS) => R, t1: T1, t2: T2, t3: T3): (...ts: TS) => R; (func: (t1: T1, t2: T2, t3: T3, t4: T4, ...ts: TS) => R, t1: T1, t2: T2, t3: T3, t4: T4): (...ts: TS) => R; placeholder: Placeholder; _: Placeholder; } /** * 创建一个函数。该函数调用 `func`,并传入预设的 `args` 参数。 * * `partial._` 或 `partial.placeholder` 可用作参数的占位符。 * * @function * @alias module:Function.partial * @since 1.0.0 * @param {Function} func 需要预设的函数。 * @param {...*} [args] 预设的参数。 * @returns {Function} 预设参数的函数。 * @example * * function greet(greeting, name){ * return greeting + ' ' + name; * } * * const sayHelloTo = partial(greet, 'hello'); * sayHelloTo('jeff'); // 'hello jeff' * * const greetJeff = partial(greet, partial._, 'jeff'); * greetJeff('hi'); // 'hi jeff' * */ declare const partial: Partial; export default partial;