/// import { INode, SchemaRegistry } from '@mcschema/core'; import * as fs from 'fs'; import { TextDocument } from 'vscode-languageserver-textdocument'; import { Diagnostic, Range, SemanticTokensLegend } from 'vscode-languageserver/node'; import { URI as Uri } from 'vscode-uri'; import { JsonSchemaType } from '../data/JsonSchema'; import { VanillaData } from '../data/VanillaData'; import { DiagnosticMap, JsonNode } from '../nodes'; import { IdentityNode } from '../nodes/IdentityNode'; import { LanguageConfig } from '../plugins/LanguageConfigImpl'; import { SyntaxComponent, TextRange } from '../types'; import { FileType } from '../types/ClientCache'; import { CommandTree } from '../types/CommandTree'; import { Config } from '../types/Config'; import { DatapackDocument } from '../types/DatapackDocument'; import { PathAccessibleFunction, UrisOfIds } from '../types/handlers'; import { DatapackLanguageService } from './DatapackLanguageService'; export declare function getUri(str: string): Uri; export declare function getRootUri(str: string): Uri; export declare function getUriFromId(pathExists: PathAccessibleFunction, roots: Uri[], urisOfIds: UrisOfIds, id: IdentityNode, category: FileType, preferredRoot: Uri): Uri; export declare function getUriFromId(pathExists: PathAccessibleFunction, roots: Uri[], urisOfIds: UrisOfIds, id: IdentityNode, category: FileType, preferredRoot?: undefined): Promise; export declare function parseJsonNode({ service, textDoc, config, uri, schema, commandTree, vanillaData, jsonSchemas, schemaType }: { service: DatapackLanguageService; textDoc: TextDocument; config: Config; uri: Uri; schema: INode; commandTree: CommandTree; jsonSchemas: SchemaRegistry; schemaType: JsonSchemaType; vanillaData: VanillaData; }): JsonNode; export declare function parseSyntaxComponents(service: DatapackLanguageService, textDoc: TextDocument, start: number | undefined, end: number | undefined, config: Config, uri: Uri, cursor: number | undefined, commandTree: CommandTree, vanillaData: VanillaData, jsonSchemas: SchemaRegistry, languageConfigs: Map): SyntaxComponent[]; export declare function getRelAndRootIndex(uri: Uri, roots: Uri[]): { rel: string; index: number; } | null; export declare function getRel(uri: Uri, roots: Uri[]): string | undefined; export declare function getId(uri: Uri, roots: Uri[]): { id: IdentityNode; category: "function" | "advancement" | "damage_type" | "dimension" | "dimension_type" | "item_modifier" | "loot_table" | "predicate" | "recipe" | "structure" | "tag/block" | "tag/damage_type" | "tag/entity_type" | "tag/fluid" | "tag/function" | "tag/game_event" | "tag/item" | "tag/worldgen/biome" | "tag/worldgen/configured_carver" | "tag/worldgen/configured_decorator" | "tag/worldgen/configured_feature" | "tag/worldgen/configured_structure_feature" | "tag/worldgen/configured_surface_builder" | "tag/worldgen/density_function" | "tag/worldgen/noise" | "tag/worldgen/noise_settings" | "tag/worldgen/placed_feature" | "tag/worldgen/processor_list" | "tag/worldgen/structure" | "tag/worldgen/structure_set" | "tag/worldgen/template_pool" | "worldgen/biome" | "worldgen/configured_carver" | "worldgen/configured_decorator" | "worldgen/configured_feature" | "worldgen/configured_structure_feature" | "worldgen/configured_surface_builder" | "worldgen/density_function" | "worldgen/flat_level_generator_preset" | "worldgen/noise" | "worldgen/noise_settings" | "worldgen/placed_feature" | "worldgen/processor_list" | "worldgen/structure" | "worldgen/structure_set" | "worldgen/template_pool" | "worldgen/world_preset"; side: "data" | "assets"; } | undefined; export declare function getRootIndex(uri: Uri, roots: Uri[]): number | null; export declare function getTextDocument({ uri, langID, getText, version }: { uri: Uri; langID: 'mcfunction' | 'json'; getText: () => Promise; version: number | null; }): Promise; export declare function getDiagnosticMap(diagnostics: Diagnostic[]): DiagnosticMap; export declare function getSemanticTokensLegend(): SemanticTokensLegend; export declare function getLspRange(textDoc: TextDocument, { start, end }: TextRange): Range; export declare function getStringLines(string: string): string[]; export declare function getSelectedNodeFromInfo(info: DatapackDocument, offset: number): { index: number; node: JsonNode | SyntaxComponent | null; }; export declare function partitionedIteration(iterator: IterableIterator, onEachItem: (item: T) => any): Promise; export declare function walkFile(workspaceRootPath: string, abs: string, onFile: (abs: string, rel: string, stat: fs.Stats) => any, pathFilter?: (abs: string, rel: string, stat: fs.Stats) => Promise): Promise; export declare function walkRoot(workspaceRoot: Uri, abs: string, cb: (xabs: string, stat: fs.Stats) => any, depth?: number): Promise;