@lambda-group/charydbis
Version:
๐ NodeJS ScyllaDB ORM. ๐งช๐ง
33 lines (29 loc) โข 1.19 kB
TypeScript
import { Uuid, ClusterConfig, ConnectionOptions, ScyllaSession } from '@lambda-group/scylladb';
import { B as BaseModelConstructor, d as BaseModel } from './base-CwY0FL6F.js';
import { PrimaryKeyProp, AnyArray, FilterQuery } from './src/decorators/typings.js';
declare class Repository<T extends {
[PrimaryKeyProp]?: AnyArray;
}> {
private dataSource;
private tableName;
private columns;
private modelClass;
private logger;
constructor(dataSource: DataSource, modelClass: BaseModelConstructor);
private columnToValue;
findAll(): Promise<T[] | null>;
findBy(query: FilterQuery<T>): Promise<T[]>;
findByPartitionKey<U extends string | number | Uuid>(id: U): Promise<T[]>;
save(model: T): Promise<void>;
}
declare class DataSource {
private options;
private cluster;
private session;
constructor(options: ClusterConfig);
initialize(keyspaceOrOptions?: string | ConnectionOptions): Promise<DataSource>;
getSession(): ScyllaSession | never;
getRepository<T extends BaseModel>(model: new () => T extends BaseModel ? T : never): Repository<T>;
[Symbol.dispose](): void;
}
export { DataSource as D, Repository as R };