import type { AnyDatasetInstance, DatasetQuery, DatasetQueryResult, ExecutionContext } from './types.js'; import type { QueryBuilderFactoryLike, QueryBuilderLike } from './query-builder-protocol.js'; import { type ValidationResult } from './validation.js'; export interface DatasetQueryExecutionOptions { builderFactory: QueryBuilderFactoryLike; context?: ExecutionContext; /** * Overrides the SQL `LIMIT` without affecting validation (which still uses * `query.limit`). Used to over-fetch one row for pagination's `hasMore`. */ executionLimit?: number; } export declare function validateDatasetQuery(ds: AnyDatasetInstance, query: DatasetQuery, context?: ExecutionContext): ValidationResult; export declare function buildDatasetQueryBuilder(ds: AnyDatasetInstance, query: DatasetQuery, options: DatasetQueryExecutionOptions): QueryBuilderLike; export declare function runDatasetQuery(ds: AnyDatasetInstance, query: DatasetQuery, options: DatasetQueryExecutionOptions): Promise; //# sourceMappingURL=dataset-query.d.ts.map