This repository has no description
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435363738394041424344// SPDX-License-Identifier: AGPL-3.0-or-later
import type {Webhook} from '../models/Webhook';
export abstract class IWebhookRepository { abstract findUnique(webhookId: bigint): Promise<Webhook | null>;
abstract findByToken(webhookId: bigint, token: string): Promise<Webhook | null>;
abstract create(data: { webhookId: bigint; token: string; type: number; guildId: bigint | null; channelId: bigint | null; creatorId: bigint | null; name: string; avatarHash: string | null; }): Promise<Webhook>;
abstract update( webhookId: bigint, data: Partial<{ token: string; type: number; guildId: bigint | null; channelId: bigint | null; creatorId: bigint | null; name: string; avatarHash: string | null; }>, ): Promise<Webhook | null>;
abstract delete(webhookId: bigint): Promise<void>;
abstract listByGuild(guildId: bigint): Promise<Array<Webhook>>;
abstract listByChannel(channelId: bigint): Promise<Array<Webhook>>;
abstract countByGuild(guildId: bigint): Promise<number>;
abstract countByChannel(channelId: bigint): Promise<number>;}