UNPKG

mongodb-schema

Version:

Infer the probabilistic schema for a MongoDB collection.

31 lines (30 loc) 1.45 kB
/// <reference types="node" /> import { Schema as InternalSchema } from './schema-analyzer'; import { ExpandedJSONSchema, MongoDBJSONSchema, SchemaConverterFn, StandardJSONSchema } from './types'; type Options = { signal?: AbortSignal; }; export interface SchemaAccessor { getStandardJsonSchema: (options?: Options) => Promise<StandardJSONSchema>; getMongoDBJsonSchema: (options?: Options) => Promise<MongoDBJSONSchema>; getExpandedJSONSchema: (options?: Options) => Promise<ExpandedJSONSchema>; getInternalSchema: (options?: Options) => Promise<InternalSchema>; } export type InternalConverters = { internalToStandard: SchemaConverterFn<InternalSchema, StandardJSONSchema>; internalToExpanded: SchemaConverterFn<InternalSchema, ExpandedJSONSchema>; internalToMongoDB: SchemaConverterFn<InternalSchema, MongoDBJSONSchema>; }; export declare class InternalSchemaBasedAccessor implements SchemaAccessor { private internalSchema; private standardJSONSchema?; private mongodbJSONSchema?; private expandedJSONSchema?; private converters; constructor(internalSchema: InternalSchema, converters: InternalConverters); getInternalSchema(): Promise<InternalSchema>; getStandardJsonSchema(options?: Options): Promise<StandardJSONSchema>; getMongoDBJsonSchema(options?: Options): Promise<MongoDBJSONSchema>; getExpandedJSONSchema(options?: Options): Promise<ExpandedJSONSchema>; } export {};