import { IrType } from "@tsonic/frontend"; import type { CSharpTypeAst } from "../format/backend-ast/types.js"; import type { EmitterContext } from "../../types.js"; export type EmitTypeAstLike = (type: IrType, context: EmitterContext) => [CSharpTypeAst, EmitterContext]; export type RuntimeUnionLayout = { readonly members: readonly IrType[]; readonly memberTypeAsts: readonly CSharpTypeAst[]; readonly carrierTypeArgumentAsts: readonly CSharpTypeAst[]; readonly runtimeUnionArity: number; readonly carrierName?: string; readonly carrierFullName?: string; }; export type RuntimeUnionFrame = { readonly members: readonly IrType[]; readonly runtimeUnionArity: number; }; export declare const UNKNOWN_TYPE: IrType; export declare const BROAD_OBJECT_TYPE: IrType; export declare const isRuntimeUnionTypeName: (name: string) => boolean; export declare const getRuntimeUnionReferenceMembers: (type: Extract) => readonly IrType[] | undefined; //# sourceMappingURL=runtime-union-shared.d.ts.map