1 | import type { RequestError } from "@octokit/request-error";
|
2 | import type { EventNames } from "./generated/event-names";
|
3 | import { GetWebhookPayloadTypeFromEvent } from "./generated/get-webhook-payload-type-from-event";
|
4 | export interface WebhookEvent<T = any> {
|
5 | id: string;
|
6 | name: EventNames.StringNames;
|
7 | payload: T;
|
8 | }
|
9 | export interface Options<T extends WebhookEvent> {
|
10 | path?: string;
|
11 | secret?: string;
|
12 | transform?: TransformMethod<T>;
|
13 | }
|
14 | declare type TransformMethod<T extends WebhookEvent> = (event: WebhookEvent) => T | PromiseLike<T>;
|
15 | export declare type HandlerFunction<E, T> = (event: GetWebhookPayloadTypeFromEvent<E, T>) => any;
|
16 | declare type Hooks = {
|
17 | [key: string]: Function[];
|
18 | };
|
19 | export interface State extends Options<any> {
|
20 | eventHandler?: any;
|
21 | hooks: Hooks;
|
22 | }
|
23 |
|
24 |
|
25 |
|
26 | export declare type WebhookError = Error & Partial<RequestError> & {
|
27 | |
28 |
|
29 |
|
30 | event: WebhookEvent;
|
31 | };
|
32 | export interface WebhookEventHandlerError extends AggregateError<WebhookError> {
|
33 | event: WebhookEvent;
|
34 | |
35 |
|
36 |
|
37 | errors: WebhookError[];
|
38 | }
|
39 |
|
40 |
|
41 |
|
42 |
|
43 |
|
44 |
|
45 |
|
46 | declare class AggregateError<T extends Error = Error> extends Error implements Iterable<T> {
|
47 | readonly name: "AggregateError";
|
48 | constructor(errors: ReadonlyArray<T | {
|
49 | [key: string]: any;
|
50 | } | string>);
|
51 | [Symbol.iterator](): IterableIterator<T>;
|
52 | }
|
53 | export {};
|