import { QueryOptions, Client } from 'sparql-http-client'; import { SparqlTemplateResult } from '@tpluscode/rdf-string'; import type { NamespaceBuilder } from '@rdfjs/namespace'; import { PrologueBuilder } from './partials/prologue.js'; interface SparqlBuildOptions { base?: string; prefixes?: Record; } export type SparqlExecuteOptions = QueryOptions & SparqlBuildOptions & { logQuery?: (query: string) => void; }; export interface SparqlQuery extends PrologueBuilder { type: 'SELECT' | 'CONSTRUCT' | 'ASK' | 'UPDATE'; build(options?: SparqlBuildOptions): string; _getTemplateResult(): SparqlTemplateResult; } export interface SparqlQueryExecutable { execute(client: TClient, requestInit?: SparqlExecuteOptions): ReturnType; } export interface SparqlGraphQueryExecutable { execute(client: TClient, requestInit?: SparqlExecuteOptions): ReturnType; } export interface SparqlUpdateExecutable { execute(client: TClient, requestInit?: SparqlExecuteOptions): ReturnType; } export interface SparqlAskExecutable { execute(client: TClient, requestInit?: SparqlExecuteOptions): ReturnType; } type TBuilder = Pick & Pick; export default function Builder(type: SparqlQuery['type']): TBuilder & T; export {}; //# sourceMappingURL=index.d.ts.map