/** * Copyright (c) 2026, Salesforce, Inc., * All rights reserved. * For full license text, see the LICENSE.txt file */ import type { GraphQLSchema } from "graphql"; import type { QuerySession } from "./session.js"; /** * Collects all SObject names referenced in a session's projection nodes. * Includes primary SObjects (from query/mutation paths) and parent/child * relationship SObjects detected via schema type resolution. * Used to pre-warm the ObjectInfo cache before generating types. */ export declare function collectSessionSObjects(session: QuerySession, schema: GraphQLSchema): Set; /** * Supported target languages for `codegen`. * Currently only `typescript` is implemented; add new entries here when * introducing additional emitters. */ export declare const SUPPORTED_CODEGEN_LANGUAGES: readonly ["typescript"]; export type CodegenLanguage = (typeof SUPPORTED_CODEGEN_LANGUAGES)[number]; /** * Accepts either the canonical language name (`typescript`) or a common * alias (e.g. `ts`), normalising to a `CodegenLanguage`. Returns `null` * when the input does not match a supported language. */ export declare function normalizeCodegenLanguage(value: string): CodegenLanguage | null; export interface CodegenOptions { typeName?: string; language?: CodegenLanguage; } export declare function generateTypes(session: QuerySession, schema: GraphQLSchema, options?: CodegenOptions): string;