/**
 * Attribute Collection — API Detection & Target/Selector Parsing
 *
 * Contains attribute target parsing, member name extraction, API usage detection,
 * on-call parsing, and selector parsing helpers.
 */
import { SourceLocation } from "../../../types/diagnostic.js";
import { IrModule, IrExpression, IrAttributeTarget } from "../../types.js";
import { type ParseResult } from "./arg-extractor.js";
export declare const parseAttributeTarget: (expr: IrExpression, module: IrModule, attributeTargetsApiNames: ReadonlySet<string>) => ParseResult<IrAttributeTarget>;
export declare const getMemberName: (expr: IrExpression) => string | undefined;
export declare const unwrapTransparentSelectorExpression: (expr: IrExpression) => IrExpression;
export declare const looksLikeAttributesApiUsage: (expr: IrExpression, apiNames: ReadonlySet<string>) => boolean;
export declare const parseOnCall: (expr: IrExpression, module: IrModule, apiNames: ReadonlySet<string>) => ParseResult<{
    readonly kind: "type";
    readonly name: string;
    readonly sourceSpan?: SourceLocation;
} | {
    readonly kind: "function";
    readonly name: string;
    readonly sourceSpan?: SourceLocation;
}>;
export declare const parseRootCall: (expr: IrExpression, module: IrModule, apiNames: ReadonlySet<string>) => ReturnType<typeof parseOnCall>;
export declare const parseSelector: (selector: IrExpression, module: IrModule) => ParseResult<string>;
//# sourceMappingURL=marker-detection.d.ts.map