Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | import type IBaseSymbol from "./IBaseSymbol";
import type IScopeSymbol from "./IScopeSymbol";
import type IParameterInfo from "./IParameterInfo";
import type TType from "../TType";
import type TVisibility from "../TVisibility";
/**
* Symbol representing a function definition.
*/
interface IFunctionSymbol extends IBaseSymbol {
/** Discriminator narrowed to "function" */
readonly kind: "function";
/** Scope this function belongs to (overrides IBaseSymbol.scope with specific type) */
readonly scope: IScopeSymbol;
/** Function parameters */
readonly parameters: ReadonlyArray<IParameterInfo>;
/** Return type */
readonly returnType: TType;
/** Visibility within scope */
readonly visibility: TVisibility;
/** AST reference for function body (unknown to avoid parser dependency) */
readonly body: unknown;
}
export default IFunctionSymbol;
|