import { GenerateTypeUtils } from "../converter/BaseConverter.js"; import { IRNode } from "../types.js"; import type { SwiftConverterContext } from "./SwiftConverter.js"; /** Returns true if the property is optional or its type union includes null. */ export declare function isPropertyNullable(prop: IRNode): boolean; /** * Emits a Swift struct body for an object IR node, including the property * declarations, doc comments for formatted strings, and a `CodingKeys` block * when codable conformance requires JSON-key remapping (kebab/snake renames * or backticked reserved words). * * When `c.inlineTypes` is true, nested object types extracted from this node's * properties are emitted as nested `struct` declarations inside this node's * body block instead of being registered as top-level siblings. The shared * {@link generateInlineNestedDecl} helper drives the per-parent collector. */ export declare function generateSwiftObjectType(c: SwiftConverterContext, ir: IRNode, utils: GenerateTypeUtils): string;