@gear-js/react-hooks
Version:
React hooks used across Gear applications
19 lines (18 loc) • 1.27 kB
TypeScript
import { ICalculateReplyForHandleOptions } from '@gear-js/api';
import { QueryParameters } from '../../types';
import { Query, QueryArgs, QueryName, QueryReturn, ServiceName } from './types';
type CalculateReplyOptions = Pick<ICalculateReplyForHandleOptions, 'at' | 'value'>;
type UseProgramQueryParameters<TProgram, TServiceName, TQueryName, TArgs, TQueryReturn, TData> = QueryParameters<TQueryReturn, TData> & {
program: TProgram | undefined;
serviceName: TServiceName;
functionName: TQueryName;
args: TArgs;
originAddress?: string;
calculateReply?: CalculateReplyOptions;
watch?: boolean;
};
declare function useProgramQuery<TProgram, TServiceName extends ServiceName<TProgram>, TQueryName extends QueryName<TProgram[TServiceName]>, TQuery extends Query<TProgram[TServiceName][TQueryName]>, TArgs extends QueryArgs<TQuery>, TQueryReturn extends QueryReturn<TQuery>, TData = TQueryReturn>({ program, serviceName, functionName, args, calculateReply, query, watch, ...params }: UseProgramQueryParameters<TProgram, TServiceName, TQueryName, TArgs, TQueryReturn, TData>): import('@tanstack/react-query').UseQueryResult<TData, Error> & {
queryKey: (string | undefined)[];
};
export { useProgramQuery };
export type { UseProgramQueryParameters };