Creates a state provider with a given state type.

  • Type Parameters

    • S extends unknown

      The type of the state

    Returns readonly [
        (
            __namedParameters: {
                children: ReactNode;
                initialState: S | () => S;
                onChange?: (state: S) => void;
            },
        ) => Element,
        () => readonly [S, (state: S | (prevState: S) => S) => void],
    ]

    • A tuple containing the Provider component and the useStateProvider function.