import { DSMBridgeConfiguration, DSMExecutionContext, PLBlueprint, PLHighlightEngineToken, PLAutocompleteEngineApplicationResult, PLAutocompleteEngineSuggestion } from '@supernova-studio/pulsar-language'; import { PCLogger } from '../../exports'; import { PCExporter } from '../../model/exporters/Exporter'; import { PCEngineSourceProcessingResult } from './../PulsarInterface'; export declare class PCPulsarCodeManager { private exporter; private codeExecutionContext; constructor(exporter: PCExporter); /** Execute source code and retrieve the resulting output. This also retrieves any emitted extra files. Throws error when source is not found */ executeSourceById(sourceId: string, dsmBridgeConfig: DSMBridgeConfiguration, contextKey: string, contextId: string, logger?: PCLogger): Promise; /** Update source code definition. Content can be anything */ updateSourceCodeDefinitionForSourceId(sourceId: string, definition: string): void; /** Update source code definition. Overview can be empty. Throws error when source is not found */ updateSourceLocation(oldSourceId: string, newSourceId: string, newPath: string): void; /** Suggest next characters, words or snippets to be inserted into pulsar code as user types */ suggestNextFromSourceCode(code: string, selectionLocation: number, selectionLength: number): Array; /** Apply autocompletion result to specified pulsar code */ applyAutocompletionResultToCode(code: string, selectionLocation: number, selectionLength: number, apply: PLAutocompleteEngineSuggestion): PLAutocompleteEngineApplicationResult; /** Compute highlight tokens for the provided pulsar code */ suggestHighlightFromSourceCode(code: string): Array; createContextData(contextKey: string, contextId: string): Map; parseSource(declaration: string, name: string, executionContext: DSMExecutionContext): Promise; interpretSource(source: PLBlueprint, data: Map, executionContext: DSMExecutionContext): Promise; }