import { TimeUnit } from '../../../prisma/enums';
import { WebhookTriggerEvents } from '../../../prisma/enums';
import type { RouterOutputs } from '../../../trpc/react';
export type TWebhook = RouterOutputs["viewer"]["webhook"]["list"][number];
export type WebhookFormData = {
    id?: string;
    subscriberUrl: string;
    active: boolean;
    eventTriggers: WebhookTriggerEvents[];
    secret: string | null;
    payloadTemplate: string | undefined | null;
    time?: number | null;
    timeUnit?: TimeUnit | null;
};
export type WebhookFormSubmitData = WebhookFormData & {
    changeSecret: boolean;
    newSecret: string;
};
type WebhookTriggerEventOptions = readonly {
    value: WebhookTriggerEvents;
    label: string;
}[];
declare const WEBHOOK_TRIGGER_EVENTS_GROUPED_BY_APP_V2: Record<string, WebhookTriggerEventOptions>;
export type WebhookFormValues = {
    subscriberUrl: string;
    active: boolean;
    eventTriggers: WebhookTriggerEvents[];
    secret: string | null;
    payloadTemplate: string | undefined | null;
    time?: number | null;
    timeUnit?: TimeUnit | null;
};
declare const WebhookForm: (props: {
    webhook?: WebhookFormData;
    apps?: (keyof typeof WEBHOOK_TRIGGER_EVENTS_GROUPED_BY_APP_V2)[];
    overrideTriggerOptions?: (typeof WEBHOOK_TRIGGER_EVENTS_GROUPED_BY_APP_V2)["core"];
    onSubmit: (event: WebhookFormSubmitData) => void;
    onCancel?: () => void;
    noRoutingFormTriggers: boolean;
    selectOnlyInstantMeetingOption?: boolean;
}) => JSX.Element;
export default WebhookForm;
//# sourceMappingURL=WebhookForm.d.ts.map