function hasActiveBookingLine
hasActiveBookingLine(
attendeeId: number,
listingId: number,
): Promise<boolean>

True when the attendee has a real (quantity > 0) booking on the exact listing. Authorizes per-(attendee, listing) actions — e.g. the signed attachment download — against the EXACT row, not getAttendeeRaw's arbitrary left-joined sibling row (which for a mixed attendee could pass on a ghost/other-listing row, or wrongly reject a valid real-line download). A no-quantity sentinel line is excluded, so a line later marked no-quantity stops authorizing.

Parameters

attendeeId: number
listingId: number

Return Type

Promise<boolean>

Usage

import { hasActiveBookingLine } from "docs/database.ts";