/** * Copyright 2014-present Palantir Technologies * @license MIT * @fileoverview Implements a convenient thunk function to handle the common case * of creating a memoized function that takes its inputs from mutable class properties. */ import { MemoizedFunction } from "./index"; export declare type Thunk = () => R; export declare function memThunk(arg1: Thunk, compute: (this: void, arg1: I1) => O): MemoizedFunction>; export declare function memThunk(arg1: Thunk, arg2: Thunk, compute: (this: void, arg1: I1, arg2: I2) => O): MemoizedFunction>; export declare function memThunk(arg1: Thunk, arg2: Thunk, arg3: Thunk, compute: (this: void, arg1: I1, arg2: I2, arg3: I3) => O): MemoizedFunction>; export declare function memThunk(arg1: Thunk, arg2: Thunk, arg3: Thunk, arg4: Thunk, compute: (this: void, arg1: I1, arg2: I2, arg3: I3, arg4: I4) => O): MemoizedFunction>;