3.1.7 • Published 4 months ago

@types/react-resolver v3.1.7

Weekly downloads
58
License
MIT
Repository
github
Last release
4 months ago

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

// Type definitions for react-resolver 3.1
// Project: https://github.com/ericclemmons/react-resolver
// Definitions by: forabi <https://github.com/forabi>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.8

import { ComponentType, FunctionComponent, Factory } 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: Wed, 20 Oct 2021 21:01:42 GMT
  • Dependencies: @types/react
  • Global values: none

Credits

These definitions were written by forabi.

3.1.7

4 months ago

3.1.6

6 months ago

3.1.5

7 months ago

3.1.4

7 months ago

3.1.3

3 years ago

3.1.2

6 years ago

3.1.1

6 years ago

3.1.0

6 years ago