import React from 'react'; /** * 创建 ajax 高阶组件 * * 组件卸载时,打断未完成的请求 * props中注入ajax属性 * * 使用方式: * this.props.ajax.get(...) * * @param ajax * @returns {function({propName?: *}=): function(*): WithAjax} */ declare const createAjaxHoc: (ajax: any) => ({ propName }?: { propName?: string | undefined; }) => (WrappedComponent: any) => { new (props: any): { readonly _$ajax: any; readonly _$ajaxTokens: any[]; componentWillUnmount(): void; render(): JSX.Element; context: unknown; setState(state: {} | ((prevState: Readonly<{}>, props: Readonly<{}>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void; forceUpdate(callback?: (() => void) | undefined): void; readonly props: Readonly<{}>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): boolean; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly<{}>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly<{}>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextType?: React.Context | undefined; }; export default createAjaxHoc;