import { AstNode, AstNodeDescription, DefaultScopeComputation, DefaultScopeProvider, LangiumDocument, LangiumServices, PrecomputedScopes, ReferenceInfo, Scope } from 'langium';
import { CancellationToken } from 'vscode-jsonrpc';
/**
 * Custom Langium ScopeComputation implementation which adds enum fields into global scope
 */
export declare class ZModelScopeComputation extends DefaultScopeComputation {
    private readonly services;
    constructor(services: LangiumServices);
    computeExports(document: LangiumDocument<AstNode>, cancelToken?: CancellationToken | undefined): Promise<AstNodeDescription[]>;
    processNode(node: AstNode, document: LangiumDocument<AstNode>, scopes: PrecomputedScopes): void;
}
export declare class ZModelScopeProvider extends DefaultScopeProvider {
    private readonly services;
    constructor(services: LangiumServices);
    protected getGlobalScope(referenceType: string, context: ReferenceInfo): Scope;
    getScope(context: ReferenceInfo): Scope;
    private getMemberAccessScope;
    private getCollectionPredicateScope;
    private createScopeForContainingModel;
    private createScopeForContainer;
    private createScopeForAuth;
}
