import { SdkConstant as ApiConstant, SdkFunction as ApiFunction, SdkCategory } from '@arcgis/languages-sdk-spec'; import { ApiCategory, ApiContext, ApiDictionaryVariable, ApiValueVariable, ApiVariable } from './types'; import { CompletionItem } from 'vscode-languageserver-types'; export interface ApiVersion { major: number; minor?: number; } export type ApiConstantNamespace = { type: "namespace"; key: string; members: ApiConstant[]; completion: CompletionItem; }; export type ApiConstantDefinition = ApiConstant | ApiConstantNamespace; export type ApiFunctionDefinition = { type: "functionDefinition"; key: string; overloads: ApiFunction[]; }; /** * Describes the API properties */ export interface ApiDatabase { categories: ApiCategory[]; functionDefinitions: Map; constantDefinitions: Map; } export declare function filterApiLibraryForContext(apiLibraryPromise: Promise, context: ApiContext): Promise; /** * Helper function to test if a variable is a value variable */ export declare function isValueVariable(variable: ApiVariable | null | undefined): variable is ApiValueVariable; /** * Helper function to test if a variable is a dictionary variable */ export declare function isDictionaryVariable(variable: ApiVariable | null | undefined): variable is ApiDictionaryVariable;