import { FunctionStateMutability, FunctionVisibility } from "../../ast"; import { Range } from "../../misc"; import { Node } from "../../misc/node"; import { FunctionLikeType } from "./function_like_type"; import { TypeNode } from "./type"; export declare class FunctionType extends FunctionLikeType { /** * The type for external functions includes the name, * as its used for computing the canonical signature. */ readonly returns: TypeNode[]; visibility: FunctionVisibility; readonly mutability: FunctionStateMutability; /** * If this function type corresponds to a library function * bound to a type with a `using for` directive, the first * argument is implicitly the object on which the function is invoked. */ readonly implicitFirstArg: boolean; constructor(name: string | undefined, parameters: TypeNode[], returns: TypeNode[], visibility: FunctionVisibility, mutability: FunctionStateMutability, implicitFirstArg?: boolean, src?: Range); getChildren(): Node[]; pp(): string; } //# sourceMappingURL=function_type.d.ts.map