import { VkEvent } from "../vk/types"; import { Like } from "./postgres/entities/Like"; import { Event } from "./postgres/entities/Event"; import { Post } from "./postgres/entities/Post"; export interface Storage { getEventByMessageId( type: VkEvent, tgMessageId: number, groupId: number, channel: string ): Promise; getEventById(eventId: number): Promise; getEventByVKEventId( type: VkEvent, eventId: number, groupId: number, channel: string ): Promise; createEvent( type: VkEvent, eventId: number, groupId: number, channel: string, tgMessageId: number, text: Record ): Promise; createOrUpdateLike( messageId: number, channel: string, author: number, text: string ): Promise; getLikesFor(channel: string, messageId: number): Promise; getLikeBy( channel: string, messageId: number, author: number ): Promise; createPost( eventId: number, text: string, vkPostId: number ): Promise; findPostByEvent(eventId: number): Promise; healthcheck(): Promise; }