Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | 1x 1x 1x 1x 1x 1x | export enum DeliveryMethod { Http = 'http', EventBridge = 'eventbridge', PubSub = 'pubsub', } type WebhookHandlerFunction = ( topic: string, shop_domain: string, body: string, ) => Promise<void>; export interface RegisterOptions { // See https://shopify.dev/docs/admin-api/graphql/reference/events/webhooksubscriptiontopic for available topics topic: string; path: string; shop: string; accessToken: string; deliveryMethod?: DeliveryMethod; } export interface ShortenedRegisterOptions { // See https://shopify.dev/docs/admin-api/graphql/reference/events/webhooksubscriptiontopic for available topics shop: string; accessToken: string; deliveryMethod?: DeliveryMethod; } export interface RegisterReturn { [topic: string]: { success: boolean; result: unknown; }; } export interface WebhookRegistryEntry { path: string; webhookHandler: WebhookHandlerFunction; } interface WebhookCheckResponseNode< T = { endpoint: | { __typename: 'WebhookHttpEndpoint'; callbackUrl: string; } | { __typename: 'WebhookEventBridgeEndpoint'; arn: string; } | { __typename: 'WebhookPubSubEndpoint'; pubSubProject: string; pubSubTopic: string; }; }, > { node: { id: string; } & T; } export interface WebhookCheckResponse<T = WebhookCheckResponseNode> { data: { webhookSubscriptions: { edges: T[]; }; }; } |