@adpt/core
Version:
AdaptJS core library
24 lines • 1.07 kB
TypeScript
import { isEqualUnorderedArrays } from "@adpt/utils";
import { DocumentNode as GraphQLDocument, ExecutionResult } from "graphql";
import { AdaptElement, AdaptElementOrNull, Component } from "../jsx";
import { ObserverNameHolder } from "./registry";
declare type QueryResult<R = any> = ExecutionResult<R>;
export declare type ResultsEqualType<R = any> = (old: QueryResult<R>, newRes: QueryResult<R>) => boolean;
export interface ObserverProps<QueryData extends object> {
observer: ObserverNameHolder;
query: GraphQLDocument;
variables?: {
[name: string]: any;
};
build: (error: Error | null, props: QueryData | undefined) => AdaptElementOrNull | Promise<AdaptElementOrNull>;
}
export declare class Observer<QueryData extends object = any> extends Component<ObserverProps<QueryData>, {}> {
static defaultProps: {
isEqual: typeof isEqualUnorderedArrays;
};
private readonly mgr;
constructor(props: ObserverProps<QueryData>);
build(): Promise<AdaptElement | null>;
}
export {};
//# sourceMappingURL=Observer.d.ts.map