UNPKG

@kwikpik/server-libs

Version:

Kwikpik-Server-Libs ===================================================================================================================================================================================================

60 lines (59 loc) 2.22 kB
import { type FindOptionsWhere, type ObjectLiteral, type FindOptionsRelations, type FindOptionsOrder, type DeleteResult, EntityTarget, } from "typeorm"; import { LocalDataSourceType } from "./database"; import { OptionalKeysMapper } from "../utils/mappers"; export interface OperationResponse<T> { responseType: "success" | "failure"; data?: T; error?: any; } declare class LocalDataSourceAccessor<T extends ObjectLiteral> { target?: EntityTarget<T>; DS?: LocalDataSourceType; constructor(DS: LocalDataSourceType, trgt: EntityTarget<T>); static constructMainDefault<S extends ObjectLiteral>(trgt: EntityTarget<S>): LocalDataSourceAccessor<S>; private checkTargetAndDataSource; insertEntity(value: T): Promise<OperationResponse<T & ObjectLiteral>>; insertManyEntities(value: T[]): Promise<OperationResponse<(T & ObjectLiteral)[]>>; readEntity( where: FindOptionsWhere<T> | FindOptionsWhere<T>[], relations?: FindOptionsRelations<T> ): Promise<OperationResponse<T | null>>; readManyEntities( where?: FindOptionsWhere<T> | FindOptionsWhere<T>[], order?: FindOptionsOrder<T>, relations?: FindOptionsRelations<T>, skip?: number, take?: number ): Promise<OperationResponse<T[]>>; updateEntity(values: OptionalKeysMapper<T>): Promise<OperationResponse<OptionalKeysMapper<T> & ObjectLiteral>>; deleteEntity(where: FindOptionsWhere<T>): Promise<OperationResponse<DeleteResult>>; entityExists(where: FindOptionsWhere<T>): Promise<OperationResponse<boolean>>; countEntities(where?: FindOptionsWhere<T>): Promise<OperationResponse<number>>; } /** * Initialize datasource accessor * @param DS The datasource. * @param target Target entity. * @returns */ export declare const initializeDataSourceAccessor: <T extends ObjectLiteral>( DS: LocalDataSourceType, target: EntityTarget<T> ) => LocalDataSourceAccessor<T>; /** * Initialize main datasource accessor using datasource with default options. * @param target Target entity. * @returns */ export declare const initializeDataSourceAccessorDefault: <T extends ObjectLiteral>( target: EntityTarget<T> ) => LocalDataSourceAccessor<T>; export {}; //# sourceMappingURL=datasource-accessors.d.ts.map