import type { IfNever, Simplify } from 'type-fest'; import type { HttpClient } from '../index.js'; import type { GraphqlRequestData, GraphqlResponse } from './interfaces.js'; import type { GqlTemplateValue } from './template/index.js'; /** 分析 Response 类型 */ type ExtractResponse = K extends string ? GraphqlResponse>> : K extends object ? IfNever, never> : never; /** 发送 gql 请求 */ export interface Gql { /** * 发送 gql 请求 * * 可预期的异常包括 `RequestError` 和 `GraphqlError` */ (request: GraphqlRequestData | string, init?: RequestInit): Promise>; /** * 发送 gql query 请求,可使用插值输入变量 * * 可预期的异常包括 `RequestError` 和 `GraphqlError` */ query(query: TemplateStringsArray, ...args: GqlTemplateValue[]): Promise>; /** * 发送 gql mutation 请求,可使用插值输入变量 * * 可预期的异常包括 `RequestError` 和 `GraphqlError` */ mutation(query: TemplateStringsArray, ...args: GqlTemplateValue[]): Promise>; } /** 创建 GQL 请求处理 */ export declare function createGql(client: HttpClient): Gql; export {}; //# sourceMappingURL=plugin.d.ts.map