/**
 * DTS Type Node Conversion & Signature Keys
 *
 * Helpers for converting tsbindgen .d.ts TypeNode AST nodes to IrType
 * and computing signature keys for deterministic overload matching.
 */
import * as ts from "typescript";
import type { IrType } from "../../../types/index.js";
import type { TypeId } from "./types.js";
export declare const INSTANCE_SUFFIX = "$instance";
export declare const VIEWS_PREFIX = "__";
export declare const VIEWS_SUFFIX = "$views";
export declare const stripTsBindgenInstanceSuffix: (name: string) => string;
export declare const stripTsBindgenViewsWrapper: (name: string) => string | undefined;
export declare const getRightmostQualifiedNameText: (name: ts.EntityName) => string;
export declare const getRightmostPropertyAccessText: (expr: ts.Expression) => string | undefined;
export declare const dtsTypeNodeToIrType: (node: ts.TypeNode, inScopeTypeParams: ReadonlySet<string>, tsNameToTypeId: ReadonlyMap<string, TypeId>) => IrType;
export declare const irTypeToSignatureKey: (type: IrType) => string;
export declare const makeMethodOverloadKey: (args: {
    readonly isStatic: boolean;
    readonly name: string;
    readonly typeParamCount: number;
    readonly parameters: readonly {
        readonly type: IrType;
        readonly isRest: boolean;
    }[];
}) => string;
//# sourceMappingURL=dts-type-node-conversion.d.ts.map