import type * as pgPromise from "pg-promise"; import { AuthHandler } from "./Auth/AuthHandler"; import { FileManager } from "./FileManager/FileManager"; import type { OnInitReason } from "./initProstgles"; import type { SchemaWatch } from "./SchemaWatch/SchemaWatch"; import pg = require("pg-promise/typescript/pg-subset"); import type { ProstglesInitOptions } from "./ProstglesTypes"; import { RestApi } from "./RestApi"; import TableConfigurator from "./TableConfig/TableConfig"; import type { PRGLIOSocket } from "./DboBuilder/DboBuilder"; import { DBHandlerServer, DboBuilder } from "./DboBuilder/DboBuilder"; export { DBHandlerServer }; export type PGP = pgPromise.IMain<{}, pg.IClient>; export { getEmailSender, getOrSetTransporter, verifySMTPConfig } from "./Auth/sendEmail"; export { applyTableConfig } from "./TableConfig/applyTableConfig"; import type { DBEventsManager } from "./DBEventsManager"; import type { PublishParser } from "./PublishParser/PublishParser"; export type DB = pgPromise.IDatabase<{}, pg.IClient>; export type DBorTx = DB | pgPromise.ITask<{}>; export declare const TABLE_METHODS: ["update", "find", "findOne", "insert", "insertMany", "delete", "upsert"]; export type OnReady = { dbo: DBHandlerServer; db: DB; }; export declare class Prostgles { /** * Used to manage concurrent prostgles connections to the same database */ readonly appId: `${string}-${string}-${string}-${string}-${string}`; opts: ProstglesInitOptions; db?: DB; pgp?: PGP; dbo?: DBHandlerServer; _dboBuilder?: DboBuilder; get dboBuilder(): DboBuilder; set dboBuilder(d: DboBuilder); publishParser?: PublishParser; authHandler: AuthHandler; schemaWatch?: SchemaWatch; keywords: { $filter: string; $and: string; $or: string; $not: string; }; loaded: boolean; dbEventsManager?: DBEventsManager; schemaAge: string; fileManager?: FileManager; restApi?: RestApi; tableConfigurator?: TableConfigurator; isMedia(tableName: string): boolean; constructor(params: ProstglesInitOptions); destroyed: boolean; checkDb(): void; getTSFileName(): { fileName: string; fullPath: string; }; /** * Will write the Schema Typescript definitions to file (tsGeneratedTypesDir) */ writeDBSchema(force?: boolean): void; /** * Will re-create the dbo object */ refreshDBO: () => Promise; initRestApi: () => void; initAuthHandler: () => void; initTableConfig: (reason: OnInitReason) => Promise; initFileTable: () => Promise<{ data: {}; } | undefined>; isSuperUser: boolean; init: (onReady: import("./initProstgles").OnReadyCallbackBasic, reason: OnInitReason) => Promise>; connectedSockets: PRGLIOSocket[]; setupSocketIO(): void; onSocketConnected: (socket: PRGLIOSocket) => Promise; getClientSchema: (clientReq: import(".").AuthClientRequest, scope: import("./PublishParser/publishTypesAndUtils").PermissionScope | undefined) => Promise; pushSocketSchema: (socket: PRGLIOSocket) => Promise; } export declare function getIsSuperUser(db: DBorTx): Promise; export declare const getFileText: (fullPath: string, _format?: string) => Promise; //# sourceMappingURL=Prostgles.d.ts.map