import type { AccessModifierLabel, Annotation, DocumentLocation, SourceDef } from '../../../model/malloy_types'; import type { IncludeItem } from '../source-query-elements/include-item'; import type { FieldReference } from '../query-items/field-references'; export interface JoinIncludeProcessingState { star: AccessModifierLabel | 'inherit' | 'except' | undefined; starNote: Annotation | undefined; fieldsIncluded: Set; joinNames: Set; fieldsExcepted: Set; allFields: Set; alreadyPrivateFields: Set; modifiers: Map; renames: { as: string; name: FieldReference; location: DocumentLocation; }[]; fieldsToInclude: Set | undefined; notes: Map; } export interface IncludeProcessingState { joins: { path: string[]; state: JoinIncludeProcessingState; }[]; } export declare function getIncludeStateForJoin(joinPath: string[], state: IncludeProcessingState): JoinIncludeProcessingState; export declare function processIncludeList(includeItems: IncludeItem[] | undefined, from: SourceDef): IncludeProcessingState;