@minatojs/tests
Version:
Test Cases for Minato
40 lines (39 loc) • 1.45 kB
TypeScript
export * from './shape';
import { Database } from 'minato';
import ModelOperations from './model';
import QueryOperators from './query';
import UpdateOperators from './update';
import ObjectOperations from './object';
import Migration from './migration';
import Selection from './selection';
import Json from './json';
import Transaction from './transaction';
import Relation from './relation';
import Performance from './performance';
import './setup';
export { expect } from 'chai';
declare const Keywords: string[];
type Keywords = 'name';
type UnitOptions<T> = (T extends (database: Database, options?: infer R) => any ? R : {}) & {
[K in keyof T as Exclude<K, Keywords>]?: boolean | UnitOptions<T[K]>;
};
type DatabaseLike = Database | (() => Database) | {
model: Database;
};
type Unit<T> = ((source: DatabaseLike, options?: UnitOptions<T>, overrideOptions?: UnitOptions<T>) => void) & {
[K in keyof T as Exclude<K, Keywords>]: Unit<T[K]>;
};
declare namespace Tests {
const model: typeof ModelOperations;
const query: typeof QueryOperators;
const update: typeof UpdateOperators;
const object: typeof ObjectOperations;
const selection: typeof Selection;
const migration: typeof Migration;
const json: typeof Json;
const transaction: typeof Transaction;
const relation: typeof Relation;
const performance: typeof Performance;
}
declare const _default: Unit<typeof Tests>;
export default _default;