import ts from 'typescript'; import { Context } from '../../Context'; import { ContractInfo } from '../../contract'; import { Helper, Helpers } from '../helper'; import { ResolvedScope } from '../scope'; import { LinkedContracts } from '../types'; import { BaseScriptBuilder } from './BaseScriptBuilder'; import { ScriptBuilder } from './ScriptBuilder'; export interface EmittingScriptBuilderOptions { readonly context: Context; readonly sourceFile: ts.SourceFile; readonly scopes: Map>; readonly helpers: Helpers; readonly linked: LinkedContracts; readonly allHelpers: ReadonlyArray; readonly contractInfo?: ContractInfo; } export declare class EmittingScriptBuilder extends BaseScriptBuilder implements ScriptBuilder { private readonly scopes; constructor({ context, scopes, helpers, sourceFile, linked, contractInfo, allHelpers, }: EmittingScriptBuilderOptions); protected createScope(node: ts.Node, index: number): ResolvedScope; }