import { Definition, Location } from 'vscode-languageserver/node'; import { DefinitionFunctionParams } from './../../utils/addon-api'; import ASTPath from './../../glimmer-utils'; import { IRegistry } from './../../utils/registry-api'; import { Project } from '../../project'; import Server from '../../server'; import FSProvider from '../../fs-provider'; export declare function getPathsFromRegistry(type: 'helper' | 'modifier' | 'component' | 'routePath', name: string, registry: IRegistry): string[]; export declare function provideComponentTemplatePaths(registry: IRegistry, rawComponentName: string): string[]; export declare function provideRouteDefinition(registry: IRegistry, routeName: string, fs: FSProvider): Promise; export default class TemplateDefinitionProvider { get registry(): IRegistry; server: Server; project: Project; onInit(server: Server, project: Project): Promise; onDefinition(_: string, params: DefinitionFunctionParams): Promise; looksLikeClassicComponentName(name: string): boolean | 0; extractValueForMaybeClassicComponentName(focusPath: ASTPath): string; maybeClassicComponentName(focusPath: ASTPath): boolean; provideRouteDefinition(routeName: string): Promise; _provideLikelyRawComponentTemplatePaths(rawComponentName: string, addonName: string): string[]; provideLikelyComponentTemplatePath(rawComponentName: string): Promise; provideAngleBracketedComponentDefinition(focusPath: ASTPath): Promise; provideBlockComponentDefinition(focusPath: ASTPath): Promise; provideChildRouteDefinitions(uri: string): Promise; providePropertyDefinition(focusPath: ASTPath, uri: string): Promise; provideComponentDefinition(rawComponentName: string, addonName: string): Promise; provideMustacheDefinition(focusPath: ASTPath): Promise; provideHashPropertyUsage(focusPath: ASTPath): Promise; provideAngleBracketComponentAttributeUsage(focusPath: ASTPath): Promise; isLocalProperty(path: ASTPath): boolean; isHashPairKey(path: ASTPath): boolean; isAnglePropertyAttribute(path: ASTPath): true | undefined; isActionName(path: ASTPath): boolean; isComponentWithBlock(path: ASTPath): boolean; isMayBeComponentFromPath(path: ASTPath): true | undefined; isAngleComponent(path: ASTPath): true | undefined; isComponentOrHelperName(path: ASTPath): boolean; }