obrigado-react-admin-backend-utils
Version:
Helper utilities for react-admin graphql backend.
25 lines (24 loc) • 1.66 kB
TypeScript
import { ClassType } from 'type-graphql';
import { BaseEntity, EntitySchema } from 'typeorm';
import { EntityUpdateHelperOptions } from './EntityUpdateHelper';
import { ReactAdminDataProvider } from "./types/ReactAdminDataProvider";
import { ReturnTypeFuncValue } from "type-graphql/dist/decorators/types";
export declare function createBaseCrudResolver<ReturnType extends ReturnTypeFuncValue, CreateType extends ReturnTypeFuncValue, EntityType extends ClassType>(objectTypeCls: ClassType<ReturnType>, inputTypeCls: ClassType<CreateType>, ORMEntity: EntityType, updateHelperOptions?: Partial<EntityUpdateHelperOptions>): ClassType<ReactAdminDataProvider<ReturnType, CreateType, CreateType>>;
/**
* Generates base class for your resolver
* @param config Resolver config
*/
export declare function createAdminResolver<ReturnType extends ReturnTypeFuncValue, CreateType extends ReturnTypeFuncValue, UpdateType extends ReturnTypeFuncValue, EntityType extends EntitySchema<any>>(config: {
/** GQL type which resolver returns*/
return: ReturnType;
/** name part of all resolver methods*/
name?: string;
/** GQL input type for entity creation*/
create: ClassType<CreateType>;
/** GQL input type for entity update,optional*/
update?: ClassType<UpdateType>;
/** TypeOrm Entity class*/
entity: ClassType;
updateHelperOptions?: Partial<EntityUpdateHelperOptions>;
}): ClassType<ReactAdminDataProvider<EntityType, CreateType, UpdateType extends undefined ? CreateType : UpdateType>>;
export declare function validateEntityRelations<ORM extends BaseEntity>(entityClass: any, id: number, primaryKey: string): Promise<ORM>;