import { PluginEvent } from '@posthog/plugin-scaffold'; import { StatsD } from 'hot-shots'; import { Action, Person } from '../../types'; import { DB } from '../../utils/db/db'; import { OrganizationManager } from './organization-manager'; import { TeamManager } from './team-manager'; export declare enum WebhookType { Slack = "slack", Discord = "discord", Teams = "teams" } export declare function determineWebhookType(url: string): WebhookType; export declare function getUserDetails(event: PluginEvent, person: Person | undefined, siteUrl: string, webhookType: WebhookType): [string, string]; export declare function getActionDetails(action: Action, siteUrl: string, webhookType: WebhookType): [string, string]; export declare function getTokens(messageFormat: string): [string[], string]; export declare function getValueOfToken(action: Action, event: PluginEvent, person: Person | undefined, siteUrl: string, webhookType: WebhookType, tokenParts: string[]): [string, string]; export declare function getFormattedMessage(action: Action, event: PluginEvent, person: Person | undefined, siteUrl: string, webhookType: WebhookType): [string, string]; export declare class HookCommander { db: DB; teamManager: TeamManager; organizationManager: OrganizationManager; statsd: StatsD | undefined; constructor(db: DB, teamManager: TeamManager, organizationManager: OrganizationManager, statsd?: StatsD); findAndFireHooks(event: PluginEvent, person: Person | undefined, siteUrl: string, actionMatches: Action[]): Promise; private postWebhook; private postRestHook; }