import { Dictionary } from '@aiot-toolkit/shared-utils'; /** * 文件资源 */ export interface IFileResource { /** * 文件路径 */ fileBuildPath: string; /** * 文件内容 */ fileContentBuffer: Buffer; /** * 文件摘要 * 文件内容生成的 hash 值 */ fileContentDigest?: Uint8Array; } /** * 定义文件包 * * 相当于虚拟的 rpk 包 */ declare class Package { /** * 包前缀 */ filePrefix?: string; /** * 子包名称;整包没有 */ fileSubname?: string; /** * 是否为独立包 */ standalone: boolean; /** * 后缀名 */ fileSuffix?: string; icon?: string; banner?: string; comment?: string; /** * 资源路径匹配 */ subMatch?: RegExp; readonly fileName: string; private _resourceList; /** * 资源文件列表 */ get resourceList(): IFileResource[]; private _resourceDic; /** * 资源文件字典,以高效检查资源是否存在 */ get resourceDic(): Dictionary; /** * 是否已包含指定文件 * @param filePath 文件路径 * @returns */ include(filePath: string): boolean; getResource(filePath: string): IFileResource | undefined; /** * 添加资源 * @param data * @returns */ addResource(data: IFileResource): void; constructor(data: Partial); } export default Package;