const require_chunk = require('./chunk-CNVrAnJR.cjs');
const require_runtime = require('./runtime-g0TEIoZK.cjs');
const require_plugin = require('./plugin-CM1TSv1B.cjs');
const require_join_paths = require('./join-paths-Bc4rM2TX.cjs');
let __powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
let __stryke_string_format_title_case = require("@stryke/string-format/title-case");
let powerlines_types_context = require("powerlines/types/context");
let __powerlines_deepkit_capnp = require("@powerlines/deepkit/capnp");
let __powerlines_deepkit_resolve_reflections = require("@powerlines/deepkit/resolve-reflections");
let __powerlines_deepkit_schemas_reflection = require("@powerlines/deepkit/schemas/reflection");
let __stryke_capnp = require("@stryke/capnp");
__stryke_capnp = require_chunk.__toESM(__stryke_capnp);
let __stryke_fs_buffer = require("@stryke/fs/buffer");
let __stryke_type_checks_is_empty_object = require("@stryke/type-checks/is-empty-object");
let node_fs = require("node:fs");
let __powerlines_deepkit_reflect_type = require("@powerlines/deepkit/reflect-type");

//#region ../../node_modules/.pnpm/@stryke+path@0.26.3/node_modules/@stryke/path/dist/is-parent-path.mjs
/**
* Check if a given path is a parent of another path.
*
* @example
* ```ts
* isParentPath("/home/user/project/src/index.ts", "/home/user/project/src");
* // returns true
* isParentPath("/home/user/project/src/index.ts", "/home/user/project");
* // returns true
* isParentPath("/home/user/project/src/index.ts", "/home/user/project/src/other");
* // returns false
* isParentPath("/home/user/project/src/index.ts", "/home/user/other");
* // returns false
* isParentPath("/home/user/project/src/index.ts", "/home/user/project/src/index.ts");
* // returns false
* ```
*
* @param childPath - The path to check if it is a child of the parent path.
* @param parentPath - The path to check if it is a parent of the child path.
* @returns `true` if `childPath` is a child of `parentPath`, otherwise `false`.
*/
function isParentPath(childPath, parentPath) {
	const normalizedChild = require_join_paths.slash(childPath.replaceAll(/\\/g, "/").replace(/\/*$/, ""))?.toLowerCase();
	const normalizedParent = require_join_paths.slash(parentPath.replaceAll(/\\/g, "/").replace(/\/*$/, ""))?.toLowerCase();
	return childPath !== parentPath && normalizedChild !== normalizedParent && normalizedChild.startsWith(`${normalizedParent}/`);
}

//#endregion
//#region src/helpers/reflect.ts
function __assignType(fn, args) {
	fn.__type = args;
	return fn;
}
function mergeEnvReflections(context, reflections) {
	return createEnvReflection(context, { type: (0, __powerlines_deepkit_vendor_type.merge)(reflections.map(__assignType((reflection) => reflection.type, [
		"reflection",
		"",
		"P\"2!\"/\""
	]))) });
}
mergeEnvReflections.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"reflections",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"mergeEnvReflections",
	"Pn!2\"P\"7#F2$P\"7%/&"
];
function mergeSecretsReflections(context, reflections) {
	return createSecretsReflection(context, { type: (0, __powerlines_deepkit_vendor_type.merge)(reflections.map(__assignType((reflection) => reflection.type, [
		"reflection",
		"",
		"P\"2!\"/\""
	]))) });
}
mergeSecretsReflections.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"reflections",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"mergeSecretsReflections",
	"Pn!2\"P\"7#F2$P\"7%/&"
];
const __ΩCreateEnvReflectionOptions = [
	() => __powerlines_deepkit_vendor_type.__ΩTypeObjectLiteral,
	() => __powerlines_deepkit_vendor_type.__ΩTypeClass,
	"type",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"superReflection",
	"CreateEnvReflectionOptions",
	"PPn!n\"J4#8P\"7$4%8Mw&y"
];
var BaseEnv = class {
	PLATFORM = "neutral";
	MODE = "production";
	DEBUG = false;
	TEST = false;
	MINIMAL = false;
	NO_COLOR = false;
	FORCE_COLOR = false;
	FORCE_HYPERLINK = false;
	STACKTRACE = false;
	INCLUDE_ERROR_DATA = false;
	CI = false;
	static __type = [
		"APP_NAME",
		"APP_VERSION",
		"BUILD_ID",
		"BUILD_TIMESTAMP",
		"BUILD_CHECKSUM",
		"RELEASE_ID",
		"RELEASE_TAG",
		"ORGANIZATION",
		"node",
		"browser",
		"neutral",
		"PLATFORM",
		function() {
			return "neutral";
		},
		"development",
		"test",
		"production",
		"MODE",
		function() {
			return "production";
		},
		"ENVIRONMENT",
		"DEBUG",
		function() {
			return false;
		},
		"TEST",
		function() {
			return false;
		},
		"MINIMAL",
		function() {
			return false;
		},
		"NO_COLOR",
		function() {
			return false;
		},
		"FORCE_COLOR",
		function() {
			return false;
		},
		"FORCE_HYPERLINK",
		function() {
			return false;
		},
		"STACKTRACE",
		function() {
			return false;
		},
		"INCLUDE_ERROR_DATA",
		function() {
			return false;
		},
		"ERROR_URL",
		"DEFAULT_TIMEZONE",
		"DEFAULT_LOCALE",
		"CI",
		function() {
			return false;
		},
		() => require_runtime.__ΩEnvInterface,
		"BaseEnv",
		"&3!&3\"&3#&3$&3%&3&&3'&3(P.).*.+J3,>-P.../.0J31>2&33)34>5)36>7)38>9)3:>;P')J3<>=P')J3>>?)3@>A)3B>C&3D&3E&3F)3G>H5nIx\"wJ"
	];
};
var BaseSecrets = class {
	static __type = [
		"ENCRYPTION_KEY",
		() => require_runtime.__ΩSecretsInterface,
		"BaseSecrets",
		"&3!5n\"x\"w#"
	];
};
function createEnvReflection(context, options = {}) {
	const parent = options.superReflection ?? new __powerlines_deepkit_vendor_type.ReflectionClass({
		kind: __powerlines_deepkit_vendor_type.ReflectionKind.class,
		description: `The base environment configuration definition for the ${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} project.`,
		classType: BaseEnv,
		types: [],
		implements: [{
			kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
			typeName: "EnvInterface",
			description: `The environment configuration interface definition for the ${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} project.`,
			types: []
		}]
	});
	parent.name = "Env";
	const result = new __powerlines_deepkit_vendor_type.ReflectionClass(options.type ?? {
		kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
		typeName: "Env",
		description: `A schema describing the list of available environment variables that can be used by the ${context.config.name ? `${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} application` : "application"}.`,
		types: []
	}, parent);
	result.name = "Env";
	return result;
}
createEnvReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __ΩCreateEnvReflectionOptions,
	"options",
	() => ({}),
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"createEnvReflection",
	"Pn!2\"n#2$>%P\"7&/'"
];
function createSecretsReflection(context, options = {}) {
	const parent = options.superReflection ?? new __powerlines_deepkit_vendor_type.ReflectionClass({
		kind: __powerlines_deepkit_vendor_type.ReflectionKind.class,
		description: `The base secrets configuration definition for the ${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} project.`,
		classType: BaseSecrets,
		types: [],
		implements: [{
			kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
			typeName: "SecretsInterface",
			description: `The secrets configuration interface definition for the ${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} project.`,
			types: []
		}]
	});
	parent.name = "Secrets";
	const result = new __powerlines_deepkit_vendor_type.ReflectionClass(options.type ?? {
		kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
		typeName: "Secrets",
		description: `A schema describing the list of available environment secrets that can be used by the ${context.config.name ? `${(0, __stryke_string_format_title_case.titleCase)(context.config.name)} application` : "application"}.`,
		types: []
	}, parent);
	result.name = "Secrets";
	return result;
}
createSecretsReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __ΩCreateEnvReflectionOptions,
	"options",
	() => ({}),
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"createSecretsReflection",
	"Pn!2\"n#2$>%P\"7&/'"
];
async function reflectEnv(context, file, name) {
	let config;
	if (file) config = (0, __powerlines_deepkit_vendor_type.resolveClassType)(await (0, __powerlines_deepkit_reflect_type.reflectType)(context, {
		file: !isParentPath(file, context.workspaceConfig.workspaceRoot) ? require_join_paths.joinPaths(context.workspaceConfig.workspaceRoot, file) : file,
		name
	}));
	const defaultConfigType = await (0, __powerlines_deepkit_reflect_type.reflectType)(context, await getEnvDefaultTypeDefinition(context));
	return mergeEnvReflections(context, [
		await readEnvTypeReflection(context, "env"),
		config,
		(0, __powerlines_deepkit_vendor_type.resolveClassType)(defaultConfigType)
	].filter(Boolean));
}
reflectEnv.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	"file",
	"name",
	"reflectEnv",
	"Pn!2\"&2#8&2$8\"/%"
];
async function reflectSecrets(context, file, name) {
	let config;
	if (file) config = (0, __powerlines_deepkit_vendor_type.resolveClassType)(await (0, __powerlines_deepkit_reflect_type.reflectType)(context, {
		file: !isParentPath(file, context.workspaceConfig.workspaceRoot) ? require_join_paths.joinPaths(context.workspaceConfig.workspaceRoot, file) : file,
		name
	}));
	const defaultSecretsType = await (0, __powerlines_deepkit_reflect_type.reflectType)(context, await getSecretsDefaultTypeDefinition(context));
	return mergeSecretsReflections(context, [
		await readSecretsReflection(context),
		config,
		(0, __powerlines_deepkit_vendor_type.resolveClassType)(defaultSecretsType)
	].filter(Boolean));
}
reflectSecrets.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	"file",
	"name",
	"reflectSecrets",
	"Pn!2\"&2#8&2$8\"/%"
];

//#endregion
//#region src/helpers/persistence.ts
/**
* Resolves the runtime type definition file for the environment variables.
*
* @param context - The plugin context.
* @returns The runtime type definition file for the environment variables.
*/
async function resolveRuntimeTypeFile(context) {
	const resolved = await context.fs.resolve("@powerlines/plugin-env/types/runtime");
	if (!resolved) throw new Error(`Failed to resolve the runtime type definition file for the environment variables. Please ensure that the "@powerlines/plugin-env" package is installed.`);
	return resolved;
}
resolveRuntimeTypeFile.__type = [
	() => powerlines_types_context.__ΩUnresolvedContext,
	() => require_plugin.__ΩEnvPluginResolvedConfig,
	"context",
	"resolveRuntimeTypeFile",
	"Resolves the runtime type definition file for the environment variables.",
	"Pn\"o!\"2#&`/$?%"
];
/**
* Gets the default type definition for the environment variables.
*
* @param context - The plugin context.
* @returns The default type definition for the environment variables.
*/
async function getEnvDefaultTypeDefinition(context) {
	return {
		file: await resolveRuntimeTypeFile(context),
		name: "EnvInterface"
	};
}
getEnvDefaultTypeDefinition.__type = [
	() => powerlines_types_context.__ΩUnresolvedContext,
	() => require_plugin.__ΩEnvPluginResolvedConfig,
	"context",
	"getEnvDefaultTypeDefinition",
	"Gets the default type definition for the environment variables.",
	"Pn\"o!\"2#!`/$?%"
];
/** Gets the default type definition for the environment secrets.
*
* @param context - The plugin context.
* @returns The default type definition for the environment secrets.
*/
async function getSecretsDefaultTypeDefinition(context) {
	return {
		file: await resolveRuntimeTypeFile(context),
		name: "SecretsInterface"
	};
}
getSecretsDefaultTypeDefinition.__type = [
	() => powerlines_types_context.__ΩUnresolvedContext,
	() => require_plugin.__ΩEnvPluginResolvedConfig,
	"context",
	"getSecretsDefaultTypeDefinition",
	"Pn\"o!\"2#!`/$"
];
/**
* Gets the path to the environment type reflections.
*
* @param context - The plugin context.
* @param name - The name of the type reflections.
* @returns The path to the environment type reflections.
*/
function getEnvTypeReflectionsPath(context, name = "env") {
	return require_join_paths.joinPaths((0, __powerlines_deepkit_resolve_reflections.getReflectionsPath)(context), "env", `${name}-types.bin`);
}
getEnvTypeReflectionsPath.__type = [
	() => powerlines_types_context.__ΩContext,
	() => require_plugin.__ΩEnvPluginResolvedConfig,
	"context",
	() => require_plugin.__ΩEnvType,
	"name",
	() => "env",
	"getEnvTypeReflectionsPath",
	"Gets the path to the environment type reflections.",
	"Pn\"o!\"2#n$2%>&&/'?("
];
/**
* Reads the environment type reflection from the file system.
*
* @param context - The plugin context.
* @param name - The name of the type reflections.
* @returns The environment type reflection.
*/
async function readEnvTypeReflection(context, name = "env") {
	const filePath = getEnvTypeReflectionsPath(context, name);
	if (!(0, node_fs.existsSync)(filePath)) {
		if (!context.env.types.env || (0, __stryke_type_checks_is_empty_object.isEmptyObject)(context.env.types.env)) {
			const reflection$1 = createEnvReflection(context);
			const message = new __stryke_capnp.Message();
			reflection$1.messageRoot = message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
			reflection$1.dataBuffer = message.toArrayBuffer();
			context.env.types.env = reflection$1;
			await writeEnvTypeReflection(context, context.env.types.env, name);
		}
		return context.env.types.env;
	}
	const buffer = await (0, __stryke_fs_buffer.readFileBuffer)(filePath);
	const messageRoot = new __stryke_capnp.Message(buffer, false).getRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
	const reflection = (0, __powerlines_deepkit_vendor_type.resolveClassType)((0, __powerlines_deepkit_vendor_type.deserializeType)((0, __powerlines_deepkit_capnp.convertFromCapnp)(messageRoot.types)));
	context.env.types[name] = reflection;
	context.env.types[name].messageRoot = messageRoot;
	context.env.types[name].dataBuffer = buffer;
	return reflection;
}
readEnvTypeReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => require_plugin.__ΩEnvType,
	"name",
	() => "env",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"readEnvTypeReflection",
	"Reads the environment type reflection from the file system.",
	"Pn!2\"n#2$>%P\"7&`/'?("
];
/**
* Writes the environment type reflection to the file system.
*
* @param context - The plugin context.
* @param reflection - The environment type reflection to write.
* @param name - The name of the type reflections.
*/
async function writeEnvTypeReflection(context, reflection, name = "env") {
	const serialized = reflection.serializeType();
	const message = new __stryke_capnp.Message();
	(0, __powerlines_deepkit_capnp.convertToCapnp)(serialized, message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes)._initTypes(serialized.length));
	await (0, __stryke_fs_buffer.writeFileBuffer)(getEnvTypeReflectionsPath(context, name), message.toArrayBuffer());
}
writeEnvTypeReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"reflection",
	() => require_plugin.__ΩEnvType,
	"name",
	() => "env",
	"writeEnvTypeReflection",
	"Writes the environment type reflection to the file system.",
	"Pn!2\"P\"7#2$n%2&>'\"/(?)"
];
function getEnvReflectionsPath(context, name) {
	return require_join_paths.joinPaths((0, __powerlines_deepkit_resolve_reflections.getReflectionsPath)(context), "env", `${name}.bin`);
}
getEnvReflectionsPath.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => require_plugin.__ΩEnvType,
	"name",
	"getEnvReflectionsPath",
	"Pn!2\"n#2$&/%"
];
/**
* Reads the environment reflection data from the file system.
*
* @param context - The plugin context.
* @returns The environment reflection data.
*/
async function readEnvReflection(context) {
	const filePath = getEnvReflectionsPath(context, "env");
	if (!(0, node_fs.existsSync)(filePath)) {
		if (!context.env.types.env) context.env.types.env = await readEnvTypeReflection(context, "env");
		if (!context.env.used.env || (0, __stryke_type_checks_is_empty_object.isEmptyObject)(context.env.used.env)) {
			const reflection$1 = createEnvReflection(context, {
				type: {
					kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
					typeName: "Env",
					description: `An object containing the environment configuration parameters that are used (at least once) by the ${context.config.name ? `${context.config.name} application` : "application"}.`,
					types: []
				},
				superReflection: context.env.types.env
			});
			reflection$1.name = "Env";
			const message = new __stryke_capnp.Message();
			reflection$1.messageRoot = message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
			reflection$1.dataBuffer = message.toArrayBuffer();
			context.env.used.env = reflection$1;
			await writeEnvReflection(context, context.env.used.env, "env");
		}
		return context.env.used.env;
	}
	const buffer = await (0, __stryke_fs_buffer.readFileBuffer)(filePath);
	const messageRoot = new __stryke_capnp.Message(buffer, false).getRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
	const reflection = (0, __powerlines_deepkit_vendor_type.resolveClassType)((0, __powerlines_deepkit_vendor_type.deserializeType)((0, __powerlines_deepkit_capnp.convertFromCapnp)(messageRoot.types)));
	context.env.used.env = reflection;
	context.env.used.env.messageRoot = messageRoot;
	context.env.used.env.dataBuffer = buffer;
	return reflection;
}
readEnvReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"readEnvReflection",
	"Reads the environment reflection data from the file system.",
	"Pn!2\"P\"7#`/$?%"
];
/**
* Reads the secret environment reflection data from the file system.
*
* @param context - The plugin context.
* @returns The environment reflection data.
*/
async function readSecretsReflection(context) {
	const filePath = getEnvReflectionsPath(context, "secrets");
	if (!(0, node_fs.existsSync)(filePath)) {
		if (!context.env.types.secrets) context.env.types.secrets = await readEnvTypeReflection(context, "secrets");
		if (!context.env.used.secrets || (0, __stryke_type_checks_is_empty_object.isEmptyObject)(context.env.used.secrets)) {
			const reflection$1 = createEnvReflection(context, {
				type: {
					kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
					typeName: "Secrets",
					description: `An object containing the secret configuration parameters that are used (at least once) by the ${context.config.name ? `${context.config.name} application` : "application"}.`,
					types: []
				},
				superReflection: context.env.types.secrets
			});
			reflection$1.name = "Secrets";
			const message = new __stryke_capnp.Message();
			reflection$1.messageRoot = message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
			reflection$1.dataBuffer = message.toArrayBuffer();
			context.env.used.secrets = reflection$1;
			await writeEnvReflection(context, context.env.used.secrets, "secrets");
		}
		return context.env.used.secrets;
	}
	const buffer = await (0, __stryke_fs_buffer.readFileBuffer)(filePath);
	const messageRoot = new __stryke_capnp.Message(buffer, false).getRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes);
	const reflection = (0, __powerlines_deepkit_vendor_type.resolveClassType)((0, __powerlines_deepkit_vendor_type.deserializeType)((0, __powerlines_deepkit_capnp.convertFromCapnp)(messageRoot.types)));
	context.env.used.secrets = reflection;
	context.env.used.secrets.messageRoot = messageRoot;
	context.env.used.secrets.dataBuffer = buffer;
	return reflection;
}
readSecretsReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"readSecretsReflection",
	"Reads the secret environment reflection data from the file system.",
	"Pn!2\"P\"7#`/$?%"
];
/**
* Writes the environment reflection data to the file system.
*
* @param context - The plugin context.
* @param reflection - The reflection data to write.
* @param name - The name of the reflection (either "env" or "secrets").
*/
async function writeEnvReflection(context, reflection, name = "env") {
	const serialized = reflection.serializeType();
	const message = new __stryke_capnp.Message();
	(0, __powerlines_deepkit_capnp.convertToCapnp)(serialized, message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes)._initTypes(serialized.length));
	await (0, __stryke_fs_buffer.writeFileBuffer)(getEnvReflectionsPath(context, name), message.toArrayBuffer());
}
writeEnvReflection.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"reflection",
	() => require_plugin.__ΩEnvType,
	"name",
	() => "env",
	"writeEnvReflection",
	"Writes the environment reflection data to the file system.",
	"Pn!2\"P\"7#2$n%2&>'\"/(?)"
];
/**
* Writes the environment reflection data to the file system.
*
* @param context - The plugin context.
* @param reflection - The reflection data to write.
* @param name - The name of the reflection (either "env" or "secrets").
*/
function writeEnvReflectionSync(context, reflection, name = "env") {
	const serialized = reflection.serializeType();
	const message = new __stryke_capnp.Message();
	(0, __powerlines_deepkit_capnp.convertToCapnp)(serialized, message.initRoot(__powerlines_deepkit_schemas_reflection.SerializedTypes)._initTypes(serialized.length));
	(0, __stryke_fs_buffer.writeFileBufferSync)(getEnvReflectionsPath(context, name), message.toArrayBuffer());
}
writeEnvReflectionSync.__type = [
	() => require_plugin.__ΩEnvPluginContext,
	"context",
	() => __powerlines_deepkit_vendor_type.ReflectionClass,
	"reflection",
	() => require_plugin.__ΩEnvType,
	"name",
	() => "env",
	"writeEnvReflectionSync",
	"Writes the environment reflection data to the file system.",
	"Pn!2\"P\"7#2$n%2&>'\"/(?)"
];

//#endregion
Object.defineProperty(exports, 'BaseEnv', {
  enumerable: true,
  get: function () {
    return BaseEnv;
  }
});
Object.defineProperty(exports, 'BaseSecrets', {
  enumerable: true,
  get: function () {
    return BaseSecrets;
  }
});
Object.defineProperty(exports, '__ΩCreateEnvReflectionOptions', {
  enumerable: true,
  get: function () {
    return __ΩCreateEnvReflectionOptions;
  }
});
Object.defineProperty(exports, 'createEnvReflection', {
  enumerable: true,
  get: function () {
    return createEnvReflection;
  }
});
Object.defineProperty(exports, 'createSecretsReflection', {
  enumerable: true,
  get: function () {
    return createSecretsReflection;
  }
});
Object.defineProperty(exports, 'getEnvDefaultTypeDefinition', {
  enumerable: true,
  get: function () {
    return getEnvDefaultTypeDefinition;
  }
});
Object.defineProperty(exports, 'getEnvReflectionsPath', {
  enumerable: true,
  get: function () {
    return getEnvReflectionsPath;
  }
});
Object.defineProperty(exports, 'getEnvTypeReflectionsPath', {
  enumerable: true,
  get: function () {
    return getEnvTypeReflectionsPath;
  }
});
Object.defineProperty(exports, 'getSecretsDefaultTypeDefinition', {
  enumerable: true,
  get: function () {
    return getSecretsDefaultTypeDefinition;
  }
});
Object.defineProperty(exports, 'isParentPath', {
  enumerable: true,
  get: function () {
    return isParentPath;
  }
});
Object.defineProperty(exports, 'mergeEnvReflections', {
  enumerable: true,
  get: function () {
    return mergeEnvReflections;
  }
});
Object.defineProperty(exports, 'mergeSecretsReflections', {
  enumerable: true,
  get: function () {
    return mergeSecretsReflections;
  }
});
Object.defineProperty(exports, 'readEnvReflection', {
  enumerable: true,
  get: function () {
    return readEnvReflection;
  }
});
Object.defineProperty(exports, 'readEnvTypeReflection', {
  enumerable: true,
  get: function () {
    return readEnvTypeReflection;
  }
});
Object.defineProperty(exports, 'readSecretsReflection', {
  enumerable: true,
  get: function () {
    return readSecretsReflection;
  }
});
Object.defineProperty(exports, 'reflectEnv', {
  enumerable: true,
  get: function () {
    return reflectEnv;
  }
});
Object.defineProperty(exports, 'reflectSecrets', {
  enumerable: true,
  get: function () {
    return reflectSecrets;
  }
});
Object.defineProperty(exports, 'resolveRuntimeTypeFile', {
  enumerable: true,
  get: function () {
    return resolveRuntimeTypeFile;
  }
});
Object.defineProperty(exports, 'writeEnvReflection', {
  enumerable: true,
  get: function () {
    return writeEnvReflection;
  }
});
Object.defineProperty(exports, 'writeEnvReflectionSync', {
  enumerable: true,
  get: function () {
    return writeEnvReflectionSync;
  }
});
Object.defineProperty(exports, 'writeEnvTypeReflection', {
  enumerable: true,
  get: function () {
    return writeEnvTypeReflection;
  }
});