UNPKG

@uifabric/experiments

Version:

Experimental React components for building experiences for Office 365.

48 lines (47 loc) 1.75 kB
/// <reference types="react" /> import * as React from 'react'; import { IRefObject } from '../Utilities'; /** * BaseProps interface. * * @public */ export interface IBaseProps<T = any> { componentRef?: IRefObject<T>; } /** * BaseComponent class, which provides basic helpers for all components. * * @public */ export declare class BaseComponentMin<TComponentProps extends IBaseProps = {}, TState = {}> extends React.Component<TComponentProps, TState> { /** * Controls whether the componentRef prop will be resolved by this component instance. If you are * implementing a passthrough (higher-order component), you would set this to false and pass through * the props to the inner component, allowing it to resolve the componentRef. */ protected _skipComponentRefResolution: boolean; /** * BaseComponent constructor * @param props - The props for the component. * @param context - The context for the component. */ constructor(props: TComponentProps, context?: any); /** * When the component will receive props, make sure the componentRef is updated. */ componentWillReceiveProps(newProps: Readonly<TComponentProps>, newContext: any): void; /** * When the component has mounted, update the componentRef. */ componentDidMount(): void; /** * If we have disposables, dispose them automatically on unmount. */ componentWillUnmount(): void; /** * Updates the componentRef (by calling it with "this" when necessary.) */ protected _updateComponentRef(currentProps: IBaseProps, newProps?: IBaseProps): void; private _setComponentRef<TRefInterface>(ref, value); }