UNPKG

@gongt/ts-stl-client

Version:
27 lines (26 loc) 1.4 kB
/// <reference types="react" /> import * as React from "react"; import { ReactElement } from "react"; import { GlobalContext } from "../react/global-context"; export interface StatefulBaseComponentConstructor<P, S extends object> extends React.ComponentClass<P>, React.ComponentLifecycle<P, S> { new (props?: P, context?: any): StatefulBaseComponent<P, S>; } export declare abstract class StatefulBaseComponent<P, S extends object> extends React.Component<P, S> implements GlobalContext { readonly context: any; private static _bindingMethods; abstract state: S; constructor(props: P, context: any); afterConstruct<T>(props: P, context: T): void; abstract render(): ReactElement<any> | null; } export interface BaseComponentConstructor<P> extends React.ComponentClass<P>, React.ComponentLifecycle<P, {}> { new (props?: P, context?: any): BaseComponent<P>; } export interface ReactComponentConstructor<P> extends React.ComponentClass<P>, React.ComponentLifecycle<P, any> { new (props?: P, context?: any): React.Component<P, any>; } /** Redux base component */ export declare abstract class BaseComponent<P> extends StatefulBaseComponent<P, {}> implements GlobalContext { state: {}; } export declare function BindThis<T>(target: StatefulBaseComponent<any, any>, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<T>): TypedPropertyDescriptor<T>;