import { QueryConfig } from "../types/query-config"; import { ResultItem } from "../types/result-types"; import { Combine } from "../types/union-to-intersection"; import { GroqBuilderOfType } from "./as"; declare module "../groq-builder" { interface GroqBuilderSubquery extends AsCombinedDefinitions { } interface GroqBuilder extends AsCombinedDefinitions { } } interface AsCombinedDefinitions { /** * Normally, when your query matches multiple document types, * you can only project keys that all types have in common. * * This method combines all keys from the document types, * allowing you to project any of those keys. * * @example * q.star.filterByType("product", "category").asCombined().project({ * // Common fields: * _type: true, // "product" | "category" * name: true, // string * slug: "slug.current", // string * * // Product-only field: * price: true, // number | null * * // Category-only field: * description: true, // string | null * }); * */ asCombined(): GroqBuilderOfType>>, TQueryConfig, ReturnType>; } export {};