@coko/server
Version:
Reusable server for use by Coko's projects
39 lines • 2.89 kB
TypeScript
import { v4 as uuid, validate as uuidValidate } from 'uuid';
import { z } from 'zod';
import { Express, Request as ExpressRequest, Response as ExpressResponse } from 'express';
import { withFilter } from 'graphql-subscriptions';
import { sendEmail } from './services/sendEmail';
import logger from './logger';
import { db, type Db, migrationManager } from './db';
import subscriptionManager from './graphql/pubsub';
import { createFile, deleteFiles } from './models/file/file.controller';
import { NotFoundError } from './errors';
import { teamRolesEnum, teamDisplayNamesEnum } from './utils/teams';
import { BaseModel, User, Identity, Team, TeamMember, File, ChatChannel, ChatMessage, useTransaction, type JSONSchema, type QueryResult, type Pojo, type RelationMappings, type Transaction } from './models';
import * as modelJsonSchemaTypes from './models/_helpers/types';
import DbTestUtils from './db/DbTestUtils';
import fileStorage from './fileStorage';
import FileStorageConstructor from './fileStorage/FileStorage';
import WaxToDocxConverter from './services/docx/docx.service';
import { jobManager, type JobQueue } from './jobManager';
import activityLog from './services/activityLog';
import { env } from './utils/env';
import request from './utils/request';
import { callMicroservice } from './utils/microservices';
import { authenticatedCall as makeOAuthCall } from './utils/authenticatedCall';
import { deleteFileFromTemp, emptyTemp, writeFileToTemp, tempFolderPath } from './utils/filesystem';
import { clientUrl, serverUrl, initUrls } from './utils/urls';
import createGraphqlTestServer from './utils/createGraphqlTestServer';
import { type FileStorageConfig } from './configManager/configSchema';
import config from './configManager/config';
import * as authorization from './authorization';
import * as Wax from './services/docx/waxDocumentTypes';
declare const createJWT: (user: User) => string;
declare const verifyJWT: (token: string, done: any) => void;
type App = Express;
declare namespace App {
type Request = ExpressRequest;
type Response = ExpressResponse;
}
export { db, type Db, logger, config, authorization, z, type App, BaseModel, User, Identity, Team, TeamMember, File, ChatChannel, ChatMessage, modelJsonSchemaTypes, useTransaction, type JSONSchema, type QueryResult, type Pojo, type RelationMappings, type Transaction, activityLog, jobManager, type JobQueue, migrationManager, subscriptionManager, env, request, sendEmail, withFilter, uuid, uuidValidate, WaxToDocxConverter, type Wax, DbTestUtils, teamRolesEnum, teamDisplayNamesEnum, fileStorage, createFile, deleteFiles, FileStorageConstructor, type FileStorageConfig, createJWT, verifyJWT, clientUrl, serverUrl, initUrls, callMicroservice, makeOAuthCall, createGraphqlTestServer, tempFolderPath, deleteFileFromTemp, emptyTemp, writeFileToTemp, NotFoundError, };
//# sourceMappingURL=index.d.ts.map