import type { Diagnostic } from "../../../core/domain/facts/diagnostic.js"; import type { AnalysisUnit } from "../../../core/ports/analysis-unit.port.js"; import type { DeclaredSink } from "../../../core/ports/config.port.js"; import type { ISourceParser } from "../../../core/ports/parser.port.js"; import { type SyntaxNode } from "../../../infrastructure/parser/ts-utils.js"; import { type GoModule } from "./go-scope.js"; import type { OutboundResult } from "./python.js"; export type GoOutboundRequest = { readonly unit: AnalysisUnit; readonly parser: ISourceParser; readonly sinks: readonly DeclaredSink[]; }; /** * Outbound calls written against a declared sink whose sending members take a * record. The receiver claims the sink through Go embedding, and the method and * path come off the record fields the caller assigned. */ export declare function detectGoOutbound(request: GoOutboundRequest): OutboundResult; export type Construction = { readonly call: SyntaxNode; readonly module: GoModule; }; export type { Diagnostic };