import { Effect } from "../gen/interfaces/metatype-typegraph-runtimes.js";
import * as t from "../types.js";
import { Materializer, Runtime } from "./mod.js";
export declare class GraphQLRuntime extends Runtime {
    private endpoint;
    constructor(endpoint: string);
    query<P extends Record<string, t.Typedef> = Record<string, t.Typedef>, I extends t.Struct<P> = t.Struct<P>, O extends t.Typedef = t.Typedef>(inp: I, out: O, path?: string[]): t.Func<P, I, O, QueryMat>;
    mutation<P extends Record<string, t.Typedef> = Record<string, t.Typedef>, I extends t.Struct<P> = t.Struct<P>, O extends t.Typedef = t.Typedef>(inp: I, out: O, effect: Effect, path?: string[]): t.Func<P, I, O, MutationMat>;
}
interface QueryMat extends Materializer {
    path?: string[];
}
interface MutationMat extends QueryMat {
}
export {};
