redis-orm-node
Version:
`redis-orm` is a lightweight Object-Relational Mapping (ORM) library for Node.js.
25 lines (24 loc) • 1.2 kB
TypeScript
import { FindOneOptions, FindOptions, FindResult } from "../types";
export type BaseEntityClassType<Entity extends object> = {
new (...args: any[]): Entity;
get<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, id: string): Promise<FindResult<CEntity> | undefined>;
set<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, id: string, value: Partial<CEntity>): Promise<FindResult<CEntity> | undefined>;
generateId(partitionKey?: string): string;
create<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, value: CEntity, id?: string): Promise<FindResult<CEntity>>;
delete<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, id: string): Promise<number>;
find<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, options: FindOptions<CEntity>): Promise<FindResult<CEntity>[]>;
findOne<CEntity extends Entity>(this: {
new (): CEntity;
} & Entity, options: FindOneOptions<CEntity>): Promise<FindResult<CEntity> | undefined>;
};
export declare function getRepository<Entity extends object>(base: new (...args: any[]) => Entity): BaseEntityClassType<Entity>;