import type { FlattenedAttributeDescriptor, JsonValue, ManifestAttribute, ManifestDocument, ManifestSummary, UnionBranchSummary } from './migration-types.js'; interface FlattenContext { rootPath: string; unionBranch: string | null; unionDiscriminator: string | null; unionRoot: string | null; } type ManifestDefaultValue = ManifestAttribute['typia']['defaultValue'] | JsonValue[] | Record; export declare function flattenManifestLeafAttributes(attributes: Record): FlattenedAttributeDescriptor[]; export declare function flattenManifestAttribute(attribute: ManifestAttribute | undefined | null, currentPath: string, sourcePath: string, context: FlattenContext): FlattenedAttributeDescriptor[]; export declare function getAttributeByCurrentPath(attributes: Record, currentPath: string): ManifestAttribute | null; export declare function hasManifestDefault(attribute: ManifestAttribute | undefined | null): boolean; export declare function getManifestDefaultValue(attribute: ManifestAttribute | undefined | null): string | number | boolean | JsonValue[] | { [key: string]: JsonValue; } | null; export declare function summarizeManifest(manifest: ManifestDocument): ManifestSummary; export declare function summarizeUnionBranches(manifestSummary: ManifestSummary): UnionBranchSummary[]; export declare function defaultValueForManifestAttribute(attribute: ManifestAttribute): ManifestDefaultValue | null; export {};