import { RawObjectDataProcessor } from "@yamato-daiwa/es-extensions"; import type { PossiblyReadonlyParsedJSON } from "@yamato-daiwa/es-extensions"; declare abstract class ObjectDataFilesProcessor { static localization: ObjectDataFilesProcessor.Localization; static processFile(compoundParameter: Readonly<{ filePath: string; validDataSpecification: RawObjectDataProcessor.ObjectDataSpecification; schema?: ObjectDataFilesProcessor.SupportedSchemas; synchronously: false; }>): Promise; static processFile(compoundParameter: Readonly<{ filePath: string; validDataSpecification: RawObjectDataProcessor.ObjectDataSpecification; schema?: ObjectDataFilesProcessor.SupportedSchemas; synchronously: true; }>): ValidData; static processFile(compoundParameter: Readonly<{ filePath: string; schema?: ObjectDataFilesProcessor.SupportedSchemas; synchronously: false; }>): Promise; static processFile(compoundParameter: Readonly<{ filePath: string; schema?: ObjectDataFilesProcessor.SupportedSchemas; synchronously: true; }>): unknown; private static extractRawRawDataSynchronously; private static extractRawRawDataAsynchronously; private static parseRawData; } declare namespace ObjectDataFilesProcessor { enum SupportedSchemas { JSON = "JSON", YAML = "YAML", DOTENV = "DOTENV" } type Localization = Readonly<{ generateUnableToDecideDataParsingAlgorithmErrorMessage: (templateVariables: Localization.UnableToDecideDataParsingAlgorithmErrorMessage.TemplateVariables) => string; generateUnsupportedFileNameExtension: (templateVariables: Localization.UnsupportedFileNameExtensionErrorMessage.TemplateVariables) => string; }>; namespace Localization { namespace UnableToDecideDataParsingAlgorithmErrorMessage { type TemplateVariables = Readonly<{ filePath: string; }>; } namespace UnsupportedFileNameExtensionErrorMessage { type TemplateVariables = Readonly<{ filePath: string; fileNameLastExtensionWithoutLeadingDot: string; }>; } } } export default ObjectDataFilesProcessor;