export enum UsingDirectiveType { OFFLINE = 'OFFLINE', ONLINE = 'ONLINE', } export enum UsingDirectiveOfflineFileSystemType { FILE = 'FILE', FOLDER = 'FOLDER', } // tim.nguyen 2024/03/12 - For using Regex flag in string // See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions#escaping export type UsingDirectiveOfflineFilePathFilterPatternDefinition = { flags?: string; include?: string; exclude?: string; }; export type UsingDirectiveOfflineMetadataDefinition = { type: UsingDirectiveOfflineFileSystemType; path: string; filePathFilterPattern?: UsingDirectiveOfflineFilePathFilterPatternDefinition; }; export type UsingDirectiveOnlineMetadataDefinition = { package: string; version: string; }; export type UsingDirectiveDefinition = { key: string; type: UsingDirectiveType; metadata: | UsingDirectiveOfflineMetadataDefinition | UsingDirectiveOnlineMetadataDefinition; };