export interface Manifest { /** * The manifest version. */ version: 2; /** * Map of locale codes to compiled locale data file ids. */ locales: Record; /** * Map of compiled source file ids to source information. */ files: Record; } export declare namespace Manifest { interface FileInfo { /** * Map of namespaces to namespace information. */ namespaces: Record; } interface FileNamespaceInfo { /** * Array of fragment ids from this namespace that are used by this file. */ fragmentIds: string[]; } /** * The manifest filename that should be used by convention. */ const NAME = "u27n-manifest.json"; /** * The file id for global fragments. */ const GLOBAL_FILE_ID = ""; /** * Parse a manifest. * * Older manifest versions are automatically converted to the current version. */ function parse(json: string): Manifest; /** * Stringify the specified manifest. */ function stringify(manifest: Manifest): string; /** * Convert an absolute or relative filename to a file id that can be used in a manifest. * * @param manifestFilename The absolute filename of the manifest. * @param filename The absolute or relative filename to convert. */ function filenameToFileId(manifestFilename: string, filename: string): string; /** * Convert a file id to an absolute filename. * * @param manifestFilename The absolute filename of the manifest. * @param fileId The file id to convert. */ function fileIdToFilename(manifestFilename: string, fileId: string): string; }