UNPKG

@wepublish/api

Version:
37 lines (36 loc) 1.41 kB
import { ImportEventArgs, EventFromSource, ImportedEventFilter, ImportedEventSort, ImportedEventsDocument, SingleEventFilter } from './events-import.model'; import { PrismaClient } from '@prisma/client'; import { SortOrder } from "../../../../utils-api/src"; export interface ImportedEventsResolverParams { filter: ImportedEventFilter; order: SortOrder; skip: number; take: number; sort: ImportedEventSort; } export interface ImportedEventResolverParams { id: string; } export interface ImportedEventParams { id: string; } export interface CreateEventParams { id: string; } export interface EventsProvider { name: string; importedEvents(): Promise<EventFromSource[]>; importedEvent({ id }: ImportedEventResolverParams): Promise<EventFromSource>; createEvent({ id }: CreateEventParams): Promise<string>; } export declare const EVENT_IMPORT_PROVIDER: unique symbol; export declare class EventsImportService { private providers; private prisma; constructor(providers: EventsProvider[], prisma: PrismaClient); importedEvents({ filter, skip, take }: ImportedEventsResolverParams): Promise<ImportedEventsDocument>; importedEvent(filter: SingleEventFilter): Promise<EventFromSource>; createEventFromSource({ id, source }: ImportEventArgs): Promise<string>; importedEventsIds(): Promise<string[]>; getProviders(): Promise<string[]>; }