Graphql-engine: typescript types for event triggers

Created on 26 Sep 2019  路  1Comment  路  Source: hasura/graphql-engine

It'd be nice to have predefined types ship with Hasura. One practical use case for justification is creating webhooks using Zeit's micro where it'd be nice to have typing for the event-trigger payload, headers etc.

For example, this is an example payload:

{
    "event": {
        "session_variables": {
            "x-hasura-role": "admin"
        },
        "op": "INSERT",
        "data": {
            "old": null,
            "new": {
                "data": {
                    "args": [
                        123
                    ],
                    "func": "dosomething"
                },
                "id": 2
            }
        }
    },
    "created_at": "2019-09-26T05:59:40.568009Z",
    "id": "8ff13b13-7892-4d3c-888a-f637074b660f",
    "delivery_info": {
        "max_retries": 0,
        "current_retry": 0
    },
    "trigger": {
        "name": "testtrigger"
    },
    "table": {
        "schema": "public",
        "name": "test_table"
    }
}
ideas

Most helpful comment

Like this ?

export interface Payload<T = any> {
  event: {
    session_variables: { [x: string]: string }
    op: 'INSERT' | 'UPDATE' | 'DELETE' | 'MANUAL'
    data: {
      old: T | null
      new: T | null
    }
  }
  created_at: string
  id: string
  delivery_info: {
    max_retries: number
    current_retry: number
  }
  trigger: {
    name: string
  }
  table: {
    schema: string
    name: string
  }
}

>All comments

Like this ?

export interface Payload<T = any> {
  event: {
    session_variables: { [x: string]: string }
    op: 'INSERT' | 'UPDATE' | 'DELETE' | 'MANUAL'
    data: {
      old: T | null
      new: T | null
    }
  }
  created_at: string
  id: string
  delivery_info: {
    max_retries: number
    current_retry: number
  }
  trigger: {
    name: string
  }
  table: {
    schema: string
    name: string
  }
}
Was this page helpful?
0 / 5 - 0 ratings

Related issues

revskill10 picture revskill10  路  3Comments

lishine picture lishine  路  3Comments

stereobooster picture stereobooster  路  3Comments

tirumaraiselvan picture tirumaraiselvan  路  3Comments

sachaarbonel picture sachaarbonel  路  3Comments