import { env } from "deno";
import EnvVar from "./src/classes/env_var.ts";
import DocBlocksToJson from "./src/compilers/doc_blocks_to_json.ts";import LogLevels from "./src/dictionaries/log_levels.ts";import MimeDb from "https://raw.githubusercontent.com/jshttp/mime-db/master/db.json";import HttpException from "./src/exceptions/http_exception.ts";import Resource from "./src/http/resource.ts";import Response from "./src/http/response.ts";import Server from "./src/http/server.ts";import Logger from "./src/loggers/logger.ts";import ConsoleLogger from "./src/loggers/console_logger.ts";import FileLogger from "./src/loggers/file_logger.ts";import * as HttpService from "./src/services/http_service.ts";import * as Util from "./src/util.ts";
function Drash(): any { return { Compilers: { DocBlocksToJson: DocBlocksToJson }, Dictionaries: { LogLevels: LogLevels, MimeDb: MimeDb }, Exceptions: { HttpException: HttpException }, Http: { Response: Response, Resource: Resource, Server: Server }, Loggers: { Logger: Logger, ConsoleLogger: ConsoleLogger, FileLogger: FileLogger }, Services: { HttpService: HttpService }, Util: Util, Vendor: {},
addMember(name: string, member: any) { this.Vendor[name] = member; },
getEnvVar(variableName: string): EnvVar { let exists = env().hasOwnProperty(variableName); let value;
value = exists ? env()[variableName] : undefined;
return new EnvVar(variableName, value); },
setEnvVar(variableName: string, value: string): void { if (!env()[variableName]) { env()[variableName] = value; } } }; }export default Drash();