@types/react-resolver
TypeScript icon, indicating that this package has built-in type declarations

3.1.7 • Public • Published

Installation

npm install --save @types/react-resolver

Summary

This package contains type definitions for react-resolver (https://github.com/ericclemmons/react-resolver).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-resolver.

index.d.ts

import { ComponentType, Factory, FunctionComponent } from "react";

export interface Resolver {
    resolve<P>(
        factory: Factory<P>,
    ): Promise<{
        data: any;
        Resolved: FunctionComponent<P>;
    }>;

    render(factory: Factory<any>, root: Node | null): void;
}

export const Resolver: Resolver;

export type ResolveFn<Props, V> = (props: Props) => Promise<V>;

/** Use this for gaining access to a context as a prop without the boilerplate of setting `contextTypes`. */
export function context<K extends string>(
    prop: K,
): <OwnProps>(
    component: ComponentType<OwnProps>,
) => FunctionComponent<OwnProps & Record<K, any>>;

/**
 * Use `@client(LoaderComponent)` (or `client(LoaderComponent)(YourComponent)`)
 * for when you want to skip server-side rendering of part of your view and
 * perform it only on the client.
 */
export function client(
    loadingComponent: ComponentType<any>,
): <OwnProps>(
    component: ComponentType<OwnProps>,
) => FunctionComponent<OwnProps>;

export function resolve<
    OwnProps,
    K extends string,
    V,
    MoreProps = { [x: string]: any },
>(
    prop: K,
    resolveFn: ResolveFn<OwnProps & MoreProps, V>,
): (
    component: ComponentType<OwnProps & { [C in K]: V }>,
) => FunctionComponent<OwnProps & MoreProps>;

export function resolve<
    OwnProps,
    ResolvableProps = { [x: string]: any },
    MoreProps = { [x: string]: any },
>(
    resolversMap: {
        [K in keyof ResolvableProps]: ResolveFn<
            OwnProps & MoreProps,
            ResolvableProps[K]
        >;
    },
): (
    component: ComponentType<
        OwnProps & { [K in keyof ResolvableProps]?: ResolvableProps[K] }
    >,
) => FunctionComponent<OwnProps & MoreProps>;

Additional Details

  • Last updated: Tue, 02 Jan 2024 21:06:49 GMT
  • Dependencies: @types/react

Credits

These definitions were written by forabi.

Versions

Current Tags

Version History

Package Sidebar

Install

npm i @types/react-resolver

Weekly Downloads

41

Version

3.1.7

License

MIT

Unpacked Size

6.12 kB

Total Files

5

Last publish

Collaborators

  • types