UNPKG

bam-ticketing-sdk

Version:

SDK for B.A.M Ticketing API

128 lines (114 loc) 2.24 kB
import { PagingQuery } from '../common/types' export interface PdfTemplate { id: number /** * User specific name of the PDF template */ name: string /** * The HTML content used for rendering PDFs. Scriban syntax is used for the data templates. See here: https://github.com/scriban/scriban * The template should contain the {{ticket.qr_code_link}} required image. */ content: string /** * Flag indicates if this PDF template should be used as the default one, if none is specified. */ isDefault: boolean } export interface CreatePdfTemplate { name: string content: string isDefault: boolean } export interface UpdatePdfTemplate { name?: string content?: string isDefault?: boolean } export interface ListPdfTemplatesQuery extends PagingQuery { name?: string } export interface ListPdfTemplatesResponse { data: PdfTemplate[] limit: number offset: number total: number } export type PdfOrderContact = { email: string phone: string firstName: string lastName: string billingEmail: string street1: string street2: string city: string state: string country: string zip: string } export type PdfOrganizer = { name: string displayName?: string taxNumber?: string address?: { street1?: string city?: string country?: string zip?: string } contact?: { email?: string phone?: string } } export type PdfVenue = { name?: string address?: { street1?: string city?: string country?: string zip?: string } } export type PdfEvent = { name: string description?: string venue?: PdfVenue startAt?: string endAt?: string gateTime?: string } export type PdfTicketHolder = { honorific?: string firstName?: string lastName?: string address?: { street1?: string city?: string country?: string zip?: string } } export type PdfTicket = { purchaseDate: string ticketId: string qrCodeLink: string person?: PdfTicketHolder ticketCategory?: string price?: number currency?: string sector?: string row?: string seat?: string } export interface PdfTicketData { event: PdfEvent organizer: PdfOrganizer tickets: PdfTicket[] contact: Partial<PdfOrderContact> } export interface RenderPdfWithCustomTemplateRequest { template: string pdfTicket: PdfTicketData }