UNPKG

@relax.dev/router

Version:
43 lines (42 loc) 1.4 kB
import React, { ComponentType } from 'react'; import { Location, PageParams, Route, Router, State } from '../..'; import { RouterGenericBase } from '../entities/Types'; export interface RouterProps<R extends RouterGenericBase = RouterGenericBase> { /** * @deprecated */ routeState: State<R>; /** * @deprecated */ route: Route<R>; router: Router<R>; location: Location<R>; } export interface RouterParams { params: PageParams; } /** * @deprecated use RouterProps */ export declare type SantaRouterProps = RouterProps; /** * @deprecated use withRouter * @ignore */ export declare function withSantaRouter<T extends RouterProps<R>, R extends RouterGenericBase = RouterGenericBase>(Component: ComponentType<T>): React.ComponentType<Omit<T, keyof RouterProps<R_1>>>; /** * HOC для добавления свойств * * location:{@link Location} * router:{@link Router} * * в переданный компонент * * ```typescript * export default withRouter(App); * ``` * @param Component * @param withUpdate true - обновлять изменении при изменении location false - не обновлять */ export declare function withRouter<T extends RouterProps<R>, R extends RouterGenericBase = RouterGenericBase>(Component: ComponentType<T>, withUpdate?: boolean): ComponentType<Omit<T, keyof RouterProps<R>>>;