/** * Copyright (c) 2026, Salesforce, Inc., * All rights reserved. * For full license text, see the LICENSE.txt file */ import { type ProjectionNode, type VariableDefinition } from "./session.js"; import type { ArgInfo, TypeInfo, WalkerResult, InputWalkerResult, SearchMatcher } from "./walker.js"; import { parseSearchTerms, parseSearchRegex } from "./walker.js"; export { parseSearchTerms, parseSearchRegex, type SearchMatcher }; export interface TypeAnnotations { /** Per-field comment lines keyed by field name. */ fieldComments?: Map; /** For filter types: example JSON expressions. */ filterExamples?: string[]; /** For mutation inputs: nested input types to inline after the parent. */ inlinedInputs?: { info: TypeInfo; annotations: TypeAnnotations; }[]; /** For mutation inputs: sample JSON variable. */ sampleInput?: string; } export interface AliasEntry { alias: string; fieldName: string; argCount: number; isActive: boolean; } export declare function formatDirectoryListing(result: WalkerResult, opts?: { searchPattern?: string; regexPattern?: string; maxFields?: number; long?: boolean; all?: boolean; hasArgs?: boolean; aliases?: AliasEntry[]; selectedFields?: Set; optionalFields?: Set; fieldLongInfo?: Map; dataCloud?: boolean; }): string; export declare function formatArgs(args: ArgInfo[]): string; export declare function formatArgsDirectoryListing(args: ArgInfo[], long: boolean, currentValues?: Record, searchPattern?: string, regexPattern?: string): string; export declare function formatInputDirectoryListing(inputResult: InputWalkerResult, long: boolean, currentValues?: Record, listElementCount?: number, searchPattern?: string, regexPattern?: string): string; export declare function formatVariablesListing(variables: VariableDefinition[], long: boolean): string; export declare function formatNavigationPath(pathSegments: string[]): string; export declare function formatInstanceSummary(currentPath: string[], instances: ProjectionNode[], activeInstanceId?: string): string; export declare function formatTypeInfo(info: TypeInfo, annotations?: TypeAnnotations, opts?: { dataCloud?: boolean; }): string; export declare function formatValidationErrors(errors: { message: string; }[]): string; export interface FieldLongInfo { required: boolean; createable: boolean; updateable: boolean; defaultedOnCreate: boolean; filterable: boolean; sortable: boolean; referenceTargets?: string[]; referenceNameFields?: string[]; childRelTarget?: string; picklistValues?: string[]; label?: string; dataType?: string; nameField?: boolean; compound?: boolean; compoundFieldName?: string; extraTypeInfo?: string; calculated?: boolean; custom?: boolean; inlineHelpText?: string; precision?: number; scale?: number; }