import { DatabasePlatform } from '@memberjunction/core';
import { Application } from 'express';
import 'reflect-metadata';
import { RESTApiOptions } from './config.js';
/**
 * Returns the configured database platform type based on the DB_TYPE environment variable.
 * Defaults to 'sqlserver' for backward compatibility.
 */
export declare function getDbType(): DatabasePlatform;
export { MaxLength } from 'class-validator';
export * from 'type-graphql';
export { NewUserBase } from './auth/newUsers.js';
export { configInfo, DEFAULT_SERVER_CONFIG } from './config.js';
export * from './directives/index.js';
export * from './entitySubclasses/MJEntityPermissionEntityServer.server.js';
export * from './types.js';
export { TokenExpiredError, getSystemUser, getSigningKeys, extractUserInfoFromPayload, verifyUserRecord, AuthProviderFactory, IAuthProvider, } from './auth/index.js';
export * from './auth/APIKeyScopeAuth.js';
export * from './generic/PushStatusResolver.js';
export * from './generic/ResolverBase.js';
export * from './generic/RunViewResolver.js';
export * from './resolvers/RunTemplateResolver.js';
export * from './resolvers/RunAIPromptResolver.js';
export * from './resolvers/RunAIAgentResolver.js';
export * from './resolvers/TaskResolver.js';
export * from './generic/KeyValuePairInput.js';
export * from './generic/KeyInputOutputTypes.js';
export * from './generic/DeleteOptionsInput.js';
export * from './agents/skip-agent.js';
export * from './agents/skip-sdk.js';
export * from './resolvers/ColorResolver.js';
export * from './resolvers/ComponentRegistryResolver.js';
export * from './resolvers/DatasetResolver.js';
export * from './resolvers/EntityRecordNameResolver.js';
export * from './resolvers/MergeRecordsResolver.js';
export * from './resolvers/ReportResolver.js';
export * from './resolvers/QueryResolver.js';
export * from './resolvers/SqlLoggingConfigResolver.js';
export * from './resolvers/SyncRolesUsersResolver.js';
export * from './resolvers/SyncDataResolver.js';
export * from './resolvers/GetDataResolver.js';
export * from './resolvers/GetDataContextDataResolver.js';
export * from './resolvers/TransactionGroupResolver.js';
export * from './resolvers/CreateQueryResolver.js';
export * from './resolvers/TelemetryResolver.js';
export * from './resolvers/APIKeyResolver.js';
export * from './resolvers/MCPResolver.js';
export * from './resolvers/ActionResolver.js';
export * from './resolvers/EntityCommunicationsResolver.js';
export * from './resolvers/EntityResolver.js';
export * from './resolvers/ISAEntityResolver.js';
export * from './resolvers/FileCategoryResolver.js';
export * from './resolvers/FileResolver.js';
export * from './resolvers/InfoResolver.js';
export * from './resolvers/PotentialDuplicateRecordResolver.js';
export * from './resolvers/RunTestResolver.js';
export * from './resolvers/UserFavoriteResolver.js';
export * from './resolvers/UserResolver.js';
export * from './resolvers/UserViewResolver.js';
export * from './resolvers/VersionHistoryResolver.js';
export { GetReadOnlyDataSource, GetReadWriteDataSource, GetReadWriteProvider, GetReadOnlyProvider } from './util.js';
export * from './generated/generated.js';
export type MJServerOptions = {
    onBeforeServe?: () => void | Promise<void>;
    restApiOptions?: Partial<RESTApiOptions>;
};
export declare const createApp: () => Application;
export declare const serve: (resolverPaths: Array<string>, app?: Application, options?: MJServerOptions) => Promise<void>;
//# sourceMappingURL=index.d.ts.map