import { type JsonValue, type JsonObject, type PackageJson } from 'type-fest'; export interface MetapakConfiguration { configs: string[]; sequence?: string[]; data: T; } export type MetapakPackageJson = PackageJson & { metapak: MetapakConfiguration; } & U; export type MetapakModuleConfigs = Record; export interface MetapakContext { modulesConfigs: MetapakModuleConfigs; modulesSequence: string[]; configsSequence: string[]; } export type PackageJSONTransformer = (packageJSON: MetapakPackageJson) => MetapakPackageJson; export declare const identity: (x: T) => T; export declare const identityAsync: (x: T) => Promise; export declare function mapConfigsSequentially(metapakContext: MetapakContext, fn: (metapakModuleName: string, metapakModuleConfig: string) => Promise): Promise; export declare function buildDiff(newData: JsonValue, originalData: JsonValue): string;