@ghostry/finity-reactjs
Version:
Finite state management with exhaustiveness and transition enforcement for TypeScript.
11 lines (10 loc) • 410 B
TypeScript
import { type ExhaustiveSwitch, type Getter } from '@ghostry/finity-core';
import * as React from 'react';
import type { Config } from './Types';
type RenderSwitch<S extends {
kind: string;
}, C extends S['kind']> = ExhaustiveSwitch<React.ReactNode, S, C>;
declare const _default: (_config: Config) => <S extends {
kind: string;
}>(state: Getter<S>) => RenderSwitch<S, never>;
export default _default;