import ts from 'typescript';
import { ScriptBuilder } from '../sb';
import { VisitOptions } from '../types';
import { BuiltinInstanceMemberCall as BuiltinInstanceMemberCallType, BuiltinType, MemberLikeExpression } from './types';
export declare abstract class BuiltinInstanceMemberCall implements BuiltinInstanceMemberCallType {
    readonly types: Set<BuiltinType>;
    abstract canCall(sb: ScriptBuilder, func: MemberLikeExpression, node: ts.CallExpression, options: VisitOptions): boolean;
    abstract emitCall(sb: ScriptBuilder, func: MemberLikeExpression, node: ts.CallExpression, options: VisitOptions, visited: boolean): void;
}
