UNPKG

@mittwald/react-use-promise

Version:

Simple and declarative use of Promises in your React components. Observe their state and refresh them in various advanced ways.

34 lines (33 loc) 1.34 kB
import { expectType } from "tsd"; import { usePromise } from "./usePromise.js"; // eslint-disable-next-line @typescript-eslint/no-unused-vars function testResultOfUsePromiseMatchesAsyncLoaderReturnType() { const result = usePromise(loader, [0]); expectType(result); // @ts-expect-error Access to unknown prop console.log(result.unknownProp); } // eslint-disable-next-line @typescript-eslint/no-unused-vars function testResultOfUsePromiseMatchesAsyncLoaderReturnTypeWithDisabledSuspense() { const result = usePromise(loader, [0], { useSuspense: false, }); expectType(result); } // eslint-disable-next-line @typescript-eslint/no-unused-vars function testParametersOfUsePromiseMatchingAsyncLoaderParameters() { const testAsyncLoader = {}; // @ts-expect-error Access to unknown prop usePromise(testAsyncLoader, []); // @ts-expect-error Access to unknown prop usePromise(testAsyncLoader, ["foo"]); // @ts-expect-error Access to unknown prop usePromise(testAsyncLoader, [42, 42]); usePromise(testAsyncLoader, [42, "bar"]); } // eslint-disable-next-line @typescript-eslint/no-unused-vars function testResultTypeIncludeUndefinedWhenParametersAreNull() { const maybeNullParameters = {}; const result = usePromise(loader, maybeNullParameters); expectType(result); }