@getanthill/datastore
Version:
Event-Sourced Datastore
193 lines (192 loc) • 5.16 kB
TypeScript
import type { ModelsConfig } from '../models';
export declare const envConfig: {
exitOnUnavailabilityAfterMilliseconds: number;
port: string;
mode: string;
exitTimeout: number;
security: {
tokens: any[];
apiSecret: string;
encryptionKeys: any;
activeNumberEncryptionKeys: number;
accessTokenByCookie: boolean;
};
features: {
properties: {
is_readonly: string;
is_archived: string;
is_deleted: string;
};
cookies: {
options: {
httpOnly: boolean;
domain: string;
secure: boolean;
sameSite: boolean | "strict" | "none" | "lax" | undefined;
maxAge: number;
};
maxAges: any;
};
cors: {
isEnabled: boolean;
allowCredentials: string;
allowHeaders: string;
allowMethods: string;
allowOrigin: string;
exposeHeaders: string;
requestHeaders: string;
requestMethod: string;
};
cache: {
isEnabled: boolean;
scope: string;
};
api: {
timeout: {
models: number;
aggregate: number;
};
/**
* Are examples models templates exposed in API or not?
*/
templates: boolean;
/**
* Are administration routes enabled or not?
*/
admin: boolean;
aggregate: boolean;
graphql: boolean;
openAPI: {
isEnabled: boolean;
warnOnInvalidSpecificationOnly: boolean;
};
json: {
limit: string;
};
updateSpecOnModelsChange: boolean;
sseKeepAliveTimeout: number;
checkProcessingAuthorization: boolean;
stream: {
reconnectDelayOnError: number;
maxWaitOnReconnectInMilliseconds: number;
};
};
events: {
throwOnInvalidEvent: boolean;
};
fhe: {
isEnabled: boolean;
};
mqtt: {
isEnabled: boolean;
};
amqp: {
isEnabled: boolean;
};
mongodb: {
maxTimeMS: number;
explain: boolean;
slowQueryThresholdInMilliseconds: number;
};
mustWaitStatePersistence: boolean;
retryDuration: number;
deleteAfterArchiveDurationInSeconds: number;
initInternalModels: boolean;
loadOnlyModels: any;
};
authz: {
isEnabled: boolean;
noPolicyVerb: string;
skipModels: string[];
onlyModels: string[];
};
graphql: {
http: any;
openApiToGraphQL: any;
};
fhe: {
scheme: string;
polyModulusDegree: number;
bitSize: number;
bitSizes: any;
precision: number;
};
mqtt: {
namespace: string;
url: string;
options: any;
group: string;
};
amqp: {
namespace: string;
url: any;
options: any;
failover: {
reconnectionTimeoutInMilliseconds: number;
};
channel: {
prefetch: number;
};
exchange: {
consumer: {
name: string;
type: string;
options: any;
};
producer: {
name: string;
type: string;
options: any;
};
};
queue: {
consumer: {
name: string;
options: any;
};
errors: {
isEnabled: boolean;
name: string;
options: any;
};
};
headers: any;
};
mongodb: {
databases: {
/**
* @see
*
* https://mongodb.github.io/node-mongodb-native/4.5/interfaces/ConnectionOptions.html
* https://mongodb.github.io/node-mongodb-native/4.3/interfaces/MongoClientOptions.html
*
* @note
*
* Replicaset configuration to test the stream API:
* > docker run -d --name mongo4.4 -p 27017:27017 mongo:4.4 mongod --replSet "rs"
* > docker exec -it mongo4.4 mongo
* >
* > db = (new Mongo('localhost:27017')).getDB('test')
* > config={"_id":"rs","members":[{"_id":0,"host":"localhost:27017"}]}
* > rs.initiate(config)
*/
name: string;
url: string;
options: any;
}[];
ensureIndexInBackground: boolean;
};
pg: {
namespace: string;
client: {
connectionString: string;
};
};
models: ModelsConfig;
datastores: any;
openApi: {
spec: any;
};
};
declare const config: any;
export default config;