export type MemoizationFunction = (previousResult: R, currentResult: R) => boolean;