diff options
Diffstat (limited to 'entries/braxtonh/types/index.ts')
-rw-r--r-- | entries/braxtonh/types/index.ts | 18 |
1 files changed, 0 insertions, 18 deletions
diff --git a/entries/braxtonh/types/index.ts b/entries/braxtonh/types/index.ts deleted file mode 100644 index 11f4086..0000000 --- a/entries/braxtonh/types/index.ts +++ /dev/null @@ -1,18 +0,0 @@ -type Zero = "😰"; - -type Succ<N> = {prev: N}; - -type Prev<N> = N extends Succ<infer P> ? P : never; - -type Add<A, B> = B extends Zero ? A : Succ<Add<A, Prev<B>>>; - -type _Fib<N, AccumulatorA, AccumulatorB> = - N extends Zero - ? AccumulatorA - : N extends Succ<Zero> - ? AccumulatorB - : _Fib<Prev<N>, AccumulatorB, Add<AccumulatorA, AccumulatorB>>; - -type Fib<N> = _Fib<N, Zero, Succ<Zero>>; - -export type {Zero, Succ, Fib}; |