import ts from 'typescript';
import { ScriptBuilder } from '../sb';
import { VisitOptions } from '../types';
import { BuiltinInstanceMemberCall, BuiltinInstanceMemberValue, BuiltinType, CallMemberLikeExpression, MemberLikeExpression } from './types';
export declare class BuiltinInstanceMemberCallableProperty implements BuiltinInstanceMemberValue, BuiltinInstanceMemberCall {
    private readonly property;
    readonly types: Set<BuiltinType>;
    constructor(property: ts.PropertyDeclaration);
    canCall(): boolean;
    emitCall(sb: ScriptBuilder, _func: CallMemberLikeExpression, node: ts.CallExpression, optionsIn: VisitOptions, visited: boolean): void;
    emitValue(sb: ScriptBuilder, node: MemberLikeExpression, options: VisitOptions, visited?: boolean): void;
}
