|
import type {Dependencies, Signature} from '../interfaces/type.js'
|
|
|
|
export const square =
|
|
<T>(dep: Dependencies<'multiply', T>): Signature<'square', T> =>
|
|
z => dep.multiply(z, z)
|
|
// z => dep.fooBar(z, z) // fails as desired
|
|
// z => dep.multiply(z, 'foo') // fails as desired
|