import type { HookType } from '../../common/enum/Hook.ts';
import { Hook } from '../entity/Hook.ts';
export interface CreateHookCommand {
    type: HookType;
    ownerId: string;
    name: string;
    endpoint: string;
    secret: string;
}
export interface UpdateHookCommand {
    operatorId: string;
    hookId: string;
    endpoint: string;
    secret: string;
}
export interface DeleteHookCommand {
    operatorId: string;
    hookId: string;
}
export declare class HookManageService {
    private readonly hookRepository;
    private readonly config;
    get hooksLimit(): number;
    createHook(cmd: CreateHookCommand): Promise<Hook>;
    updateHook(cmd: UpdateHookCommand): Promise<Hook>;
    deleteHook(cmd: DeleteHookCommand): Promise<Hook>;
    listHooksByOwnerId(ownerId: string): Promise<Hook[]>;
    getHookByOwnerId(hookId: string, userId: string): Promise<Hook>;
}
