use-sse
Version:
useSSE - use server-side effect
34 lines (33 loc) • 1.03 kB
TypeScript
import React from "react";
export declare const DataContext: React.Context<{}>;
export declare const InternalContext: React.Context<{
requests: any[];
resolved: boolean;
current: number;
}>;
import { DependencyList, Props } from "react";
interface IDataContext {
[k: string]: any;
}
declare global {
interface Window {
[k: string]: any;
_initialDataContext: object;
}
}
/**
*
* @param effect runction returning promise
* @param dependencies list of dependencies like in useEffect
*/
export declare function useSSE<T>(effect: () => Promise<any>, dependencies?: DependencyList): T[];
export declare const createBroswerContext: (variableName?: string) => <T>(props: React.Props<T>) => JSX.Element;
export declare const createServerContext: () => {
ServerDataContext: <T>(props: React.Props<T>) => JSX.Element;
resolveData: (timeout?: number) => Promise<{
data: IDataContext;
toJSON: () => any;
toHtml: (variableName?: string) => string;
}>;
};
export {};