import { z } from 'zod'; declare const BookingOrigin: { readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }; type BookingOrigin = (typeof BookingOrigin)[keyof typeof BookingOrigin]; declare const BookingState: { readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }; type BookingState = (typeof BookingState)[keyof typeof BookingState]; declare const JobListingState: { readonly DRAFT: "DRAFT"; readonly OPEN: "OPEN"; readonly SUSPENDED: "SUSPENDED"; readonly CLOSED: "CLOSED"; readonly CANCELLED: "CANCELLED"; }; type JobListingState = (typeof JobListingState)[keyof typeof JobListingState]; declare const IoiState: { readonly OPEN: "OPEN"; readonly SHORTLISTED: "SHORTLISTED"; readonly WITHDRAWN: "WITHDRAWN"; readonly SELECTED: "SELECTED"; readonly REJECTED: "REJECTED"; readonly LISTING_CANCELLED: "LISTING_CANCELLED"; }; type IoiState = (typeof IoiState)[keyof typeof IoiState]; /** * Enum for booking payment status. */ declare const BookingPaymentStatus: { readonly PENDING: "PENDING"; readonly ESCROW_FUNDED: "ESCROW_FUNDED"; readonly RELEASED: "RELEASED"; readonly REFUNDED: "REFUNDED"; readonly FAILED: "FAILED"; }; type BookingPaymentStatus = (typeof BookingPaymentStatus)[keyof typeof BookingPaymentStatus]; /** Actor that may trigger a booking state transition (RBAC). */ declare const BookingTransitionActor: { readonly HOST: "HOST"; readonly VENDOR: "VENDOR"; readonly ADMIN: "ADMIN"; readonly SYSTEM: "SYSTEM"; }; type BookingTransitionActor = (typeof BookingTransitionActor)[keyof typeof BookingTransitionActor]; /** Canonical booking audit action names (admin dispute-evidence API). */ declare const BookingAuditAction: { readonly STATE_CHANGED: "STATE_CHANGED"; readonly TERMS_MODIFIED: "TERMS_MODIFIED"; readonly MESSAGE_SENT: "MESSAGE_SENT"; readonly ATTACHMENT_ADDED: "ATTACHMENT_ADDED"; readonly BOOKING_CREATED: "BOOKING_CREATED"; readonly BOOKING_COMPLETED: "BOOKING_COMPLETED"; readonly BOOKING_CANCELLED: "BOOKING_CANCELLED"; readonly BOOKING_ACCEPTED: "BOOKING_ACCEPTED"; readonly BOOKING_REJECTED: "BOOKING_REJECTED"; }; type BookingAuditAction = (typeof BookingAuditAction)[keyof typeof BookingAuditAction]; type BookingTransitionKey = `${BookingState}->${BookingState}`; declare const BOOKING_TERMINAL_STATES: readonly BookingState[]; /** Valid target states per source (excludes dispute shortcut — see `getAllowedBookingTargetStates`). */ declare const VALID_BOOKING_TRANSITIONS: Record; /** RBAC: which actor may perform each transition (dispute edges merged at runtime). */ declare const BOOKING_TRANSITION_ACTORS: Partial>; /** Target states that require a `reason` on the transition request. */ declare const BOOKING_TRANSITION_TARGETS_REQUIRING_REASON: readonly BookingState[]; declare function bookingTransitionKey(from: BookingState, to: BookingState): BookingTransitionKey; declare function getAllowedBookingTargetStates(from: BookingState): readonly BookingState[]; declare function isValidBookingTransition(from: BookingState, to: BookingState): boolean; declare function getBookingTransitionActors(from: BookingState, to: BookingState): readonly BookingTransitionActor[]; declare function canActorPerformBookingTransition(from: BookingState, to: BookingState, actor: BookingTransitionActor): boolean; declare function bookingTransitionRequiresReason(_from: BookingState, to: BookingState): boolean; declare const CreateBookingRequestSchema: z.ZodObject<{ origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; eventId: z.ZodOptional; vendorId: z.ZodUUID; agreedAmount: z.ZodNumber; }, z.core.$strip>; declare const ConfirmBookingRequestSchema: z.ZodObject<{ escrowReference: z.ZodString; }, z.core.$strip>; declare const BookingResponseSchema: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodOptional; hostId: z.ZodUUID; vendorId: z.ZodUUID; quotedPrice: z.ZodNumber; currency: z.ZodString; scopeOfWork: z.ZodOptional>; requiredStartAt: z.ZodISODateTime; requiredEndAt: z.ZodISODateTime; bookingState: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; paymentStatus: z.ZodEnum<{ readonly PENDING: "PENDING"; readonly ESCROW_FUNDED: "ESCROW_FUNDED"; readonly RELEASED: "RELEASED"; readonly REFUNDED: "REFUNDED"; readonly FAILED: "FAILED"; }>; escrowReference: z.ZodOptional; completedAt: z.ZodOptional; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; }, z.core.$strip>; declare const CreateJobListingRequestSchema: z.ZodObject<{ title: z.ZodString; description: z.ZodString; requiredDate: z.ZodISODateTime; estimatedDurationMinutes: z.ZodOptional; location: z.ZodString; budgetRangeMin: z.ZodOptional; budgetRangeMax: z.ZodOptional; }, z.core.$strip>; declare const JobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; hostProfileId: z.ZodUUID; eventId: z.ZodOptional; title: z.ZodString; description: z.ZodString; requiredDate: z.ZodISODateTime; estimatedDurationMinutes: z.ZodOptional>; location: z.ZodString; budgetRangeMin: z.ZodOptional; budgetRangeMax: z.ZodOptional; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly OPEN: "OPEN"; readonly SUSPENDED: "SUSPENDED"; readonly CLOSED: "CLOSED"; readonly CANCELLED: "CANCELLED"; }>; proposalCount: z.ZodNumber; createdAt: z.ZodISODateTime; }, z.core.$strip>; type CreateBookingRequest = z.infer; type ConfirmBookingRequest = z.infer; type BookingResponse = z.infer; type CreateJobListingRequest = z.infer; type JobListingResponse = z.infer; declare const JobLocation: { readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }; type JobLocation = (typeof JobLocation)[keyof typeof JobLocation]; /** Discover-jobs compensation bracket filter (NGN). */ declare const JobListingCompensationTier: { readonly LOW: "LOW"; readonly MID: "MID"; readonly HIGH: "HIGH"; }; type JobListingCompensationTier = (typeof JobListingCompensationTier)[keyof typeof JobListingCompensationTier]; /** `POST /marketplace/bookings` */ declare const CreateMarketplaceBookingRequestSchema: z.ZodObject<{ vendorId: z.ZodUUID; origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; eventId: z.ZodOptional; jobListingId: z.ZodOptional; sourceIoiId: z.ZodOptional; agreedAmount: z.ZodOptional>; scopeOfWork: z.ZodOptional; }, z.core.$strip>; /** * Assigned-event execution context on a booking. * Schedule + go-live window for the linked event. Full readiness / * streaming live on `GET /marketplace/vendor/events/:id`. * * `requiredStartAt` / `requiredEndAt` are derived from the event * schedule until `Booking.requiredStartAt` / `requiredEndAt` are written. */ declare const MarketplaceBookingAssignedEventSchema: z.ZodObject<{ id: z.ZodUUID; title: z.ZodString; state: z.ZodString; timezone: z.ZodString; scheduledStart: z.ZodISODateTime; scheduledStartLocal: z.ZodISODateTime; scheduledEnd: z.ZodISODateTime; scheduledEndLocal: z.ZodISODateTime; requiredStartAt: z.ZodISODateTime; requiredEndAt: z.ZodISODateTime; goLiveEligibleAt: z.ZodNullable; }, z.core.$strip>; declare const MarketplaceBookingResponseSchema: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; eventLinked: z.ZodBoolean; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; jobListingId: z.ZodNullable; sourceIoiId: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; agreedAmount: z.ZodNullable; }, z.core.$strip>>; scopeOfWork: z.ZodNullable; role: z.ZodNullable; description: z.ZodNullable; responsibilities: z.ZodNullable; requirements: z.ZodNullable; location: z.ZodNullable>; notes: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; assignedEvent: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; /** `POST /marketplace/bookings` — create acknowledgement */ declare const CreateMarketplaceBookingResponseSchema: z.ZodObject<{ bookingId: z.ZodUUID; booking: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; eventLinked: z.ZodBoolean; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; jobListingId: z.ZodNullable; sourceIoiId: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; agreedAmount: z.ZodNullable; }, z.core.$strip>>; scopeOfWork: z.ZodNullable; role: z.ZodNullable; description: z.ZodNullable; responsibilities: z.ZodNullable; requirements: z.ZodNullable; location: z.ZodNullable>; notes: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; assignedEvent: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; /** `POST /marketplace/bookings/:id/transition` (host, vendor, admin) */ declare const TransitionMarketplaceBookingRequestSchema: z.ZodObject<{ targetState: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; reason: z.ZodOptional; }, z.core.$strip>; declare const TransitionMarketplaceBookingResponseSchema: z.ZodObject<{ booking: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; eventLinked: z.ZodBoolean; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; jobListingId: z.ZodNullable; sourceIoiId: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; agreedAmount: z.ZodNullable; }, z.core.$strip>>; scopeOfWork: z.ZodNullable; role: z.ZodNullable; description: z.ZodNullable; responsibilities: z.ZodNullable; requirements: z.ZodNullable; location: z.ZodNullable>; notes: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; assignedEvent: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; /** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */ declare const CompleteMarketplaceBookingRequestSchema: z.ZodObject<{ notes: z.ZodOptional; }, z.core.$strip>; /** `POST /marketplace/bookings/:id/admin-force-complete` — TRUST admin override */ declare const ForceCompleteMarketplaceBookingRequestSchema: z.ZodObject<{ notes: z.ZodOptional; }, z.core.$strip>; declare const CompleteMarketplaceBookingResponseSchema: z.ZodObject<{ booking: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; eventLinked: z.ZodBoolean; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; origin: z.ZodEnum<{ readonly EVENT_DIRECT: "EVENT_DIRECT"; readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT"; readonly JOB_LISTING: "JOB_LISTING"; }>; jobListingId: z.ZodNullable; sourceIoiId: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly REQUESTED: "REQUESTED"; readonly AWAITING_VENDOR_RESPONSE: "AWAITING_VENDOR_RESPONSE"; readonly IN_NEGOTIATION: "IN_NEGOTIATION"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING"; readonly CONFIRMED: "CONFIRMED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SERVICE_COMPLETED: "SERVICE_COMPLETED"; readonly IN_DISPUTE: "IN_DISPUTE"; readonly CLOSED: "CLOSED"; readonly AWAITING_VENDOR_RECONFIRM: "AWAITING_VENDOR_RECONFIRM"; }>; agreedAmount: z.ZodNullable; }, z.core.$strip>>; scopeOfWork: z.ZodNullable; role: z.ZodNullable; description: z.ZodNullable; responsibilities: z.ZodNullable; requirements: z.ZodNullable; location: z.ZodNullable>; notes: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; assignedEvent: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; hostAcked: z.ZodBoolean; vendorAcked: z.ZodBoolean; completed: z.ZodBoolean; forced: z.ZodOptional; }, z.core.$strip>; /** `POST /marketplace/job-listings` — publish immediately unless `saveAsDraft` */ declare const CreateMarketplaceJobListingRequestSchema: z.ZodObject<{ eventTitle: z.ZodOptional>; title: z.ZodOptional>; description: z.ZodOptional; responsibilities: z.ZodOptional; requirements: z.ZodOptional; role: z.ZodOptional; requiredCount: z.ZodOptional>; requiredDateLocal: z.ZodOptional>; timezone: z.ZodOptional>; requiredDate: z.ZodOptional>; estimatedDurationMinutes: z.ZodOptional>>; location: z.ZodOptional>; notes: z.ZodOptional>; compensation: z.ZodOptional>>; attachments: z.ZodOptional>>; eventId: z.ZodOptional>; saveAsDraft: z.ZodDefault>; vendorId: z.ZodOptional; vendorIds: z.ZodOptional>; }, z.core.$strip>; declare const UpdateMarketplaceJobListingRequestSchema: z.ZodObject<{ eventTitle: z.ZodOptional>; title: z.ZodOptional>; description: z.ZodOptional; responsibilities: z.ZodOptional; requirements: z.ZodOptional; role: z.ZodOptional; requiredCount: z.ZodOptional>; requiredDateLocal: z.ZodOptional>; timezone: z.ZodOptional>; requiredDate: z.ZodOptional>; estimatedDurationMinutes: z.ZodOptional>>; location: z.ZodOptional>; notes: z.ZodOptional>; compensation: z.ZodOptional>>; attachments: z.ZodOptional>>; eventId: z.ZodOptional>; }, z.core.$strip>; declare const ListMarketplaceJobListingsQuerySchema: z.ZodObject<{ location: z.ZodOptional>; search: z.ZodOptional; roles: z.ZodOptional; requiredDateFrom: z.ZodOptional; requiredDateTo: z.ZodOptional; minCompensation: z.ZodOptional>; maxCompensation: z.ZodOptional>; compensationTier: z.ZodOptional>; matchMyAvailability: z.ZodPipe>, z.ZodTransform>; pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; /** `GET /marketplace/job-listings/mine` (host) */ declare const ListHostMarketplaceJobListingsQuerySchema: z.ZodObject<{ state: z.ZodOptional>; search: z.ZodOptional; pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; /** Required persisted fields before a DRAFT job listing can be published */ declare const PublishReadyJobListingSchema: z.ZodObject<{ eventTitle: z.ZodOptional; title: z.ZodOptional; description: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; role: z.ZodString; requiredCount: z.ZodCoercedNumber; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; eventId: z.ZodOptional; }, z.core.$strip>; /** `POST /marketplace/job-listings/:id/publish` (host owner) */ declare const PublishMarketplaceJobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; state: z.ZodLiteral<"OPEN">; }, z.core.$strip>; declare const MarketplaceJobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; hostProfileId: z.ZodUUID; eventId: z.ZodNullable; title: z.ZodString; eventTitle: z.ZodNullable; notes: z.ZodNullable; description: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; role: z.ZodString; requiredCount: z.ZodNumber; requiredDate: z.ZodNullable; requiredDateLocal: z.ZodNullable; timezone: z.ZodNullable; estimatedDurationMinutes: z.ZodNullable; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; compensation: z.ZodNullable; }, z.core.$strip>>; attachments: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly OPEN: "OPEN"; readonly SUSPENDED: "SUSPENDED"; readonly CLOSED: "CLOSED"; readonly CANCELLED: "CANCELLED"; }>; proposalCount: z.ZodNumber; cancelledAt: z.ZodNullable; cancelledReason: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; /** `POST /marketplace/job-listings/:id/cancel` (host owner) — mirrors HostEventCancelResponseSchema shape */ declare const CancelMarketplaceJobListingRequestSchema: z.ZodObject<{ reason: z.ZodOptional; }, z.core.$strip>; declare const CancelMarketplaceJobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; state: z.ZodLiteral<"CANCELLED">; cancelledAt: z.ZodNullable; }, z.core.$strip>; /** * `POST /marketplace/job-listings/:id/close` (host owner) — * pause new applications (`OPEN` → `SUSPENDED`). Pending IoIs are kept. */ declare const CloseMarketplaceJobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; state: z.ZodLiteral<"SUSPENDED">; }, z.core.$strip>; /** * `POST /marketplace/job-listings/:id/open` (host owner) — * resume applications (`SUSPENDED` | `CLOSED` → `OPEN`) when capacity remains. */ declare const OpenMarketplaceJobListingResponseSchema: z.ZodObject<{ id: z.ZodUUID; state: z.ZodLiteral<"OPEN">; }, z.core.$strip>; /** `POST .../indications-of-interest` */ declare const SubmitMarketplaceIndicationOfInterestRequestSchema: z.ZodObject<{ coverMessage: z.ZodOptional; proposedAmount: z.ZodOptional>; availabilityNotes: z.ZodOptional; attachments: z.ZodOptional>; }, z.core.$strip>; declare const MarketplaceIndicationOfInterestResponseSchema: z.ZodObject<{ id: z.ZodUUID; jobListingId: z.ZodUUID; vendorProfileId: z.ZodUUID; coverMessage: z.ZodNullable; proposedAmount: z.ZodNullable; }, z.core.$strip>>; availabilityNotes: z.ZodNullable; state: z.ZodEnum<{ readonly OPEN: "OPEN"; readonly SHORTLISTED: "SHORTLISTED"; readonly WITHDRAWN: "WITHDRAWN"; readonly SELECTED: "SELECTED"; readonly REJECTED: "REJECTED"; readonly LISTING_CANCELLED: "LISTING_CANCELLED"; }>; resultingBookingId: z.ZodNullable; withdrawnAt: z.ZodNullable; selectedAt: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; /** Host review row — IoI plus vendor display label */ declare const MarketplaceIndicationOfInterestHostItemSchema: z.ZodObject<{ id: z.ZodUUID; jobListingId: z.ZodUUID; vendorProfileId: z.ZodUUID; coverMessage: z.ZodNullable; proposedAmount: z.ZodNullable; }, z.core.$strip>>; availabilityNotes: z.ZodNullable; state: z.ZodEnum<{ readonly OPEN: "OPEN"; readonly SHORTLISTED: "SHORTLISTED"; readonly WITHDRAWN: "WITHDRAWN"; readonly SELECTED: "SELECTED"; readonly REJECTED: "REJECTED"; readonly LISTING_CANCELLED: "LISTING_CANCELLED"; }>; resultingBookingId: z.ZodNullable; withdrawnAt: z.ZodNullable; selectedAt: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; vendorCompanyName: z.ZodNullable; }, z.core.$strip>; declare const HostIndicationOfInterestSortBy: { readonly CREATED_AT: "createdAt"; readonly UPDATED_AT: "updatedAt"; readonly PROPOSED_AMOUNT: "proposedAmount"; }; declare const SortOrder: { readonly ASC: "asc"; readonly DESC: "desc"; }; /** `GET /marketplace/job-listings/indications-of-interest/mine` (host inbox) */ declare const ListHostMarketplaceIndicationsQuerySchema: z.ZodObject<{ jobListingId: z.ZodOptional; state: z.ZodOptional>; search: z.ZodOptional; sortBy: z.ZodDefault>; sortOrder: z.ZodDefault>; pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; /** Host inbox row — IoI with applicant + parent job listing summary */ declare const MarketplaceHostIndicationOfInterestInboxItemSchema: z.ZodObject<{ id: z.ZodUUID; jobListingId: z.ZodUUID; vendorProfileId: z.ZodUUID; coverMessage: z.ZodNullable; proposedAmount: z.ZodNullable; }, z.core.$strip>>; availabilityNotes: z.ZodNullable; state: z.ZodEnum<{ readonly OPEN: "OPEN"; readonly SHORTLISTED: "SHORTLISTED"; readonly WITHDRAWN: "WITHDRAWN"; readonly SELECTED: "SELECTED"; readonly REJECTED: "REJECTED"; readonly LISTING_CANCELLED: "LISTING_CANCELLED"; }>; resultingBookingId: z.ZodNullable; withdrawnAt: z.ZodNullable; selectedAt: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; vendorCompanyName: z.ZodNullable; vendorDisplayName: z.ZodString; vendorAvatarUrl: z.ZodNullable; vendorServiceCategoryLabels: z.ZodArray; vendorEquipmentLabels: z.ZodArray; vendorIsVerified: z.ZodBoolean; jobListingTitle: z.ZodString; jobListingRole: z.ZodString; jobListingState: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly OPEN: "OPEN"; readonly SUSPENDED: "SUSPENDED"; readonly CLOSED: "CLOSED"; readonly CANCELLED: "CANCELLED"; }>; jobListingLocation: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; jobListingEventId: z.ZodNullable; jobListingEventTitle: z.ZodNullable; }, z.core.$strip>; /** `GET /marketplace/indications-of-interest/mine` (vendor applications inbox) */ declare const ListVendorMarketplaceIndicationsQuerySchema: z.ZodObject<{ jobListingId: z.ZodOptional; state: z.ZodOptional>; search: z.ZodOptional; sortBy: z.ZodDefault>; sortOrder: z.ZodDefault>; pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; /** Vendor applications inbox row — IoI with parent job listing summary */ declare const MarketplaceVendorIndicationOfInterestInboxItemSchema: z.ZodObject<{ id: z.ZodUUID; jobListingId: z.ZodUUID; vendorProfileId: z.ZodUUID; coverMessage: z.ZodNullable; proposedAmount: z.ZodNullable; }, z.core.$strip>>; availabilityNotes: z.ZodNullable; state: z.ZodEnum<{ readonly OPEN: "OPEN"; readonly SHORTLISTED: "SHORTLISTED"; readonly WITHDRAWN: "WITHDRAWN"; readonly SELECTED: "SELECTED"; readonly REJECTED: "REJECTED"; readonly LISTING_CANCELLED: "LISTING_CANCELLED"; }>; resultingBookingId: z.ZodNullable; withdrawnAt: z.ZodNullable; selectedAt: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; hostBusinessName: z.ZodNullable; jobListingTitle: z.ZodString; jobListingRole: z.ZodString; jobListingState: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly OPEN: "OPEN"; readonly SUSPENDED: "SUSPENDED"; readonly CLOSED: "CLOSED"; readonly CANCELLED: "CANCELLED"; }>; jobListingLocation: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; jobListingEventId: z.ZodNullable; jobListingEventTitle: z.ZodNullable; jobListingRequiredDate: z.ZodNullable; jobListingCompensation: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; type CreateMarketplaceBookingRequest = z.infer; type MarketplaceBookingAssignedEvent = z.infer; type MarketplaceBookingResponse = z.infer; type CreateMarketplaceJobListingRequest = z.infer; type UpdateMarketplaceJobListingRequest = z.infer; type ListMarketplaceJobListingsQuery = z.infer; type ListHostMarketplaceJobListingsQuery = z.infer; type MarketplaceJobListingResponse = z.infer; type PublishMarketplaceJobListingResponse = z.infer; type PublishReadyJobListing = z.infer; type SubmitMarketplaceIndicationOfInterestRequest = z.infer; type MarketplaceIndicationOfInterestResponse = z.infer; type CreateMarketplaceBookingResponse = z.infer; type MarketplaceIndicationOfInterestHostItem = z.infer; type ListHostMarketplaceIndicationsQuery = z.infer; type MarketplaceHostIndicationOfInterestInboxItem = z.infer; type ListVendorMarketplaceIndicationsQuery = z.infer; type MarketplaceVendorIndicationOfInterestInboxItem = z.infer; type TransitionMarketplaceBookingRequest = z.infer; type TransitionMarketplaceBookingResponse = z.infer; type CompleteMarketplaceBookingRequest = z.infer; type CompleteMarketplaceBookingResponse = z.infer; type ForceCompleteMarketplaceBookingRequest = z.infer; type CancelMarketplaceJobListingRequest = z.infer; type CancelMarketplaceJobListingResponse = z.infer; type CloseMarketplaceJobListingResponse = z.infer; type OpenMarketplaceJobListingResponse = z.infer; declare const MessageDeliveryStatus: { readonly SENT: "SENT"; readonly DELIVERED: "DELIVERED"; readonly READ: "READ"; }; type MessageDeliveryStatus = (typeof MessageDeliveryStatus)[keyof typeof MessageDeliveryStatus]; declare const MarketplaceHiringThreadSchema: z.ZodObject<{ id: z.ZodUUID; bookingId: z.ZodNullable; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; /** * `POST /marketplace/threads` — host or vendor opens (or reuses) a * conversation with the other party. No booking required. * Pass exactly one of `vendorProfileId` (host starting) or * `hostProfileId` (vendor starting). */ declare const StartMarketplaceHiringThreadRequestSchema: z.ZodObject<{ vendorProfileId: z.ZodOptional; hostProfileId: z.ZodOptional; }, z.core.$strip>; /** Original upload name (sanitized server-side). Always present on API responses. */ declare const MarketplaceHiringThreadAttachmentFileNameSchema: z.ZodString; declare const MarketplaceHiringThreadPendingAttachmentSchema: z.ZodObject<{ url: z.ZodString; key: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; fileName: z.ZodString; }, z.core.$strip>; declare const MarketplaceHiringMessageAttachmentSchema: z.ZodObject<{ id: z.ZodUUID; url: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; fileName: z.ZodString; createdAt: z.ZodString; }, z.core.$strip>; declare const MarketplaceHiringMessageSchema: z.ZodObject<{ id: z.ZodUUID; threadId: z.ZodUUID; senderUserId: z.ZodUUID; body: z.ZodString; sentAt: z.ZodString; deliveryStatus: z.ZodEnum<{ readonly SENT: "SENT"; readonly DELIVERED: "DELIVERED"; readonly READ: "READ"; }>; readAt: z.ZodNullable; attachments: z.ZodArray>; }, z.core.$strip>; declare const ListMarketplaceHiringThreadMessagesQuerySchema: z.ZodObject<{ pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; declare const ListMarketplaceHiringThreadMessagesResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; messages: z.ZodArray; readAt: z.ZodNullable; attachments: z.ZodArray>; }, z.core.$strip>>; }, z.core.$strip>; declare const GetMarketplaceHiringThreadResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; thread: z.ZodObject<{ id: z.ZodUUID; bookingId: z.ZodNullable; hostProfileId: z.ZodUUID; vendorProfileId: z.ZodUUID; createdAt: z.ZodString; updatedAt: z.ZodString; }, z.core.$strip>; messages: z.ZodArray; readAt: z.ZodNullable; attachments: z.ZodArray>; }, z.core.$strip>>; }, z.core.$strip>; declare const PostMarketplaceHiringThreadMessageRequestSchema: z.ZodObject<{ body: z.ZodDefault>; attachments: z.ZodOptional>>; }, z.core.$strip>; declare const PostMarketplaceHiringThreadMessageResponseSchema: z.ZodObject<{ message: z.ZodObject<{ id: z.ZodUUID; threadId: z.ZodUUID; senderUserId: z.ZodUUID; body: z.ZodString; sentAt: z.ZodString; deliveryStatus: z.ZodEnum<{ readonly SENT: "SENT"; readonly DELIVERED: "DELIVERED"; readonly READ: "READ"; }>; readAt: z.ZodNullable; attachments: z.ZodArray>; }, z.core.$strip>; }, z.core.$strip>; /** * Multipart upload for hiring-thread chat (images, PDF, Word, MP4). * Prefer `POST /marketplace/threads/:threadId/attachments`. * Legacy: `POST /marketplace/bookings/:bookingId/thread/attachments`. * FE uploads first, then posts `{ url, key, mimeType, sizeBytes, fileName }` * via WS `hiring_thread.message.post` (body optional when attachments present). */ declare const UploadMarketplaceHiringThreadAttachmentResponseSchema: z.ZodObject<{ url: z.ZodURL; key: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; fileName: z.ZodString; }, z.core.$strip>; declare const DeleteMarketplaceHiringThreadPendingAttachmentRequestSchema: z.ZodObject<{ key: z.ZodString; }, z.core.$strip>; declare const DeleteMarketplaceHiringThreadMessageAttachmentResponseSchema: z.ZodObject<{ messageId: z.ZodUUID; messageDeleted: z.ZodBoolean; message: z.ZodNullable; readAt: z.ZodNullable; attachments: z.ZodArray>; }, z.core.$strip>>; }, z.core.$strip>; declare const MarkMarketplaceHiringThreadReadRequestSchema: z.ZodObject<{ upToMessageId: z.ZodOptional; }, z.core.$strip>; declare const MarkMarketplaceHiringThreadReadResponseSchema: z.ZodObject<{ markedCount: z.ZodNumber; }, z.core.$strip>; /** Inbox row for host/vendor — one conversation (booking optional). */ declare const MarketplaceHiringThreadInboxItemSchema: z.ZodObject<{ threadId: z.ZodUUID; bookingId: z.ZodNullable; title: z.ZodString; lastMessagePreview: z.ZodNullable; lastMessageAt: z.ZodNullable; lastSenderUserId: z.ZodNullable; lastSenderDisplayName: z.ZodNullable; unreadCount: z.ZodNumber; bookingState: z.ZodNullable>; vendorProfileId: z.ZodUUID; vendorDisplayName: z.ZodString; vendorAvatarUrl: z.ZodNullable; hostProfileId: z.ZodUUID; hostDisplayName: z.ZodString; hostAvatarUrl: z.ZodNullable; counterpartyDisplayName: z.ZodString; counterpartyAvatarUrl: z.ZodNullable; counterpartyRole: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; }>; }, z.core.$strip>; declare const ListMarketplaceHiringThreadsResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; items: z.ZodArray; title: z.ZodString; lastMessagePreview: z.ZodNullable; lastMessageAt: z.ZodNullable; lastSenderUserId: z.ZodNullable; lastSenderDisplayName: z.ZodNullable; unreadCount: z.ZodNumber; bookingState: z.ZodNullable>; vendorProfileId: z.ZodUUID; vendorDisplayName: z.ZodString; vendorAvatarUrl: z.ZodNullable; hostProfileId: z.ZodUUID; hostDisplayName: z.ZodString; hostAvatarUrl: z.ZodNullable; counterpartyDisplayName: z.ZodString; counterpartyAvatarUrl: z.ZodNullable; counterpartyRole: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; }>; }, z.core.$strip>>; }, z.core.$strip>; type MarketplaceHiringThread = z.infer; type MarketplaceHiringMessage = z.infer; type ListMarketplaceHiringThreadMessagesQuery = z.infer; type ListMarketplaceHiringThreadMessagesResponse = z.infer; type GetMarketplaceHiringThreadResponse = z.infer; type PostMarketplaceHiringThreadMessageRequest = z.infer; type PostMarketplaceHiringThreadMessageResponse = z.infer; type MarkMarketplaceHiringThreadReadRequest = z.infer; type MarkMarketplaceHiringThreadReadResponse = z.infer; type MarketplaceHiringThreadInboxItem = z.infer; type ListMarketplaceHiringThreadsResponse = z.infer; type UploadMarketplaceHiringThreadAttachmentResponse = z.infer; type MarketplaceHiringThreadPendingAttachment = z.infer; type DeleteMarketplaceHiringThreadPendingAttachmentRequest = z.infer; type DeleteMarketplaceHiringThreadMessageAttachmentResponse = z.infer; type StartMarketplaceHiringThreadRequest = z.infer; declare const CreateMarketplaceReviewRequestSchema: z.ZodObject<{ bookingId: z.ZodUUID; rating: z.ZodCoercedNumber; comment: z.ZodOptional; }, z.core.$strip>; declare const MarketplaceReviewResponseSchema: z.ZodObject<{ id: z.ZodUUID; bookingId: z.ZodUUID; reviewerId: z.ZodUUID; revieweeId: z.ZodUUID; rating: z.ZodNumber; comment: z.ZodNullable; helpfulCount: z.ZodNumber; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; }, z.core.$strip>; declare const VendorRecentReviewSchema: z.ZodObject<{ rating: z.ZodNumber; comment: z.ZodNullable; createdAt: z.ZodISODateTime; }, z.core.$strip>; declare const ListVendorReviewsQuerySchema: z.ZodObject<{ pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; }, z.core.$strip>; declare const PagedVendorReviewsResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; items: z.ZodArray; createdAt: z.ZodISODateTime; }, z.core.$strip>>; }, z.core.$strip>; type CreateMarketplaceReviewRequest = z.infer; type MarketplaceReviewResponse = z.infer; type VendorRecentReview = z.infer; type ListVendorReviewsQuery = z.infer; type PagedVendorReviewsResponse = z.infer; /** Crew dashboard "My Jobs" tabs — mirrors host `GET /host/events?tab=`. */ declare const VendorJobsTabSchema: z.ZodEnum<{ LIVE: "LIVE"; UPCOMING: "UPCOMING"; COMPLETED: "COMPLETED"; APPLICATIONS: "APPLICATIONS"; JOB_INVITES: "JOB_INVITES"; }>; /** * Unified display status for the My Jobs table. * Mapped from IoI state (Applications) or booking state (other tabs). */ declare const VendorJobRowStatusSchema: z.ZodEnum<{ PENDING: "PENDING"; REJECTED: "REJECTED"; LIVE: "LIVE"; CANCELLED: "CANCELLED"; COMPLETED: "COMPLETED"; CONFIRMED: "CONFIRMED"; SHORTLISTED: "SHORTLISTED"; WITHDRAWN: "WITHDRAWN"; SELECTED: "SELECTED"; INVITED: "INVITED"; NEGOTIATING: "NEGOTIATING"; DISPUTED: "DISPUTED"; }>; declare const VendorJobRowKindSchema: z.ZodEnum<{ IOI: "IOI"; BOOKING: "BOOKING"; ASSIGNMENT: "ASSIGNMENT"; }>; /** `GET /marketplace/vendor/jobs` */ declare const ListVendorJobsQuerySchema: z.ZodObject<{ pageNumber: z.ZodDefault>; pageSize: z.ZodDefault>; tab: z.ZodEnum<{ LIVE: "LIVE"; UPCOMING: "UPCOMING"; COMPLETED: "COMPLETED"; APPLICATIONS: "APPLICATIONS"; JOB_INVITES: "JOB_INVITES"; }>; search: z.ZodOptional; }, z.core.$strip>; /** One row in the My Jobs table (Applications / Upcoming / Live / …). */ declare const VendorJobRowSchema: z.ZodObject<{ id: z.ZodUUID; kind: z.ZodEnum<{ IOI: "IOI"; BOOKING: "BOOKING"; ASSIGNMENT: "ASSIGNMENT"; }>; eventName: z.ZodString; date: z.ZodNullable; role: z.ZodString; payment: z.ZodNullable; }, z.core.$strip>>; status: z.ZodEnum<{ PENDING: "PENDING"; REJECTED: "REJECTED"; LIVE: "LIVE"; CANCELLED: "CANCELLED"; COMPLETED: "COMPLETED"; CONFIRMED: "CONFIRMED"; SHORTLISTED: "SHORTLISTED"; WITHDRAWN: "WITHDRAWN"; SELECTED: "SELECTED"; INVITED: "INVITED"; NEGOTIATING: "NEGOTIATING"; DISPUTED: "DISPUTED"; }>; statusCode: z.ZodString; jobListingId: z.ZodNullable; bookingId: z.ZodNullable; ioiId: z.ZodNullable; eventId: z.ZodNullable; assignmentId: z.ZodOptional>; }, z.core.$strip>; declare const VendorJobsTabResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; tab: z.ZodEnum<{ LIVE: "LIVE"; UPCOMING: "UPCOMING"; COMPLETED: "COMPLETED"; APPLICATIONS: "APPLICATIONS"; JOB_INVITES: "JOB_INVITES"; }>; items: z.ZodArray; eventName: z.ZodString; date: z.ZodNullable; role: z.ZodString; payment: z.ZodNullable; }, z.core.$strip>>; status: z.ZodEnum<{ PENDING: "PENDING"; REJECTED: "REJECTED"; LIVE: "LIVE"; CANCELLED: "CANCELLED"; COMPLETED: "COMPLETED"; CONFIRMED: "CONFIRMED"; SHORTLISTED: "SHORTLISTED"; WITHDRAWN: "WITHDRAWN"; SELECTED: "SELECTED"; INVITED: "INVITED"; NEGOTIATING: "NEGOTIATING"; DISPUTED: "DISPUTED"; }>; statusCode: z.ZodString; jobListingId: z.ZodNullable; bookingId: z.ZodNullable; ioiId: z.ZodNullable; eventId: z.ZodNullable; assignmentId: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>; /** `GET /marketplace/vendor/jobs/counts` — tab badge numbers */ declare const VendorJobsTabCountsResponseSchema: z.ZodObject<{ applications: z.ZodNumber; upcoming: z.ZodNumber; live: z.ZodNumber; completed: z.ZodNumber; jobInvites: z.ZodNumber; }, z.core.$strip>; type VendorJobsTab = z.infer; type VendorJobRowStatus = z.infer; type VendorJobRowKind = z.infer; type ListVendorJobsQuery = z.infer; type VendorJobRow = z.infer; type VendorJobsTabResponse = z.infer; type VendorJobsTabCountsResponse = z.infer; declare const BookingAuditActorSchema: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; /** Optional request metadata copied into admin `details` when present. */ declare const BookingAuditRequestMetadataSchema: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; }, z.core.$strip>; /** Snapshot blob stored in audit `before` / `after` JSON columns. */ declare const BookingAuditSnapshotSchema: z.ZodRecord; /** * STATE_CHANGED, TERMS_MODIFIED, and booking lifecycle actions surface * `beforeState` / `afterState` via admin formatters. */ declare const BookingAuditStateTransitionDetailsSchema: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; declare const BookingAuditMessageSentDetailsSchema: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; bodyPreview: z.ZodString; attachmentCount: z.ZodOptional; }, z.core.$strip>; declare const BookingAuditAttachmentAddedDetailsSchema: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; attachmentId: z.ZodString; url: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; }, z.core.$strip>; /** One audit row in `GET /admin/bookings/:id/audit` — discriminated by `action`. */ declare const AdminBookingAuditEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ action: z.ZodLiteral<"STATE_CHANGED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"TERMS_MODIFIED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_CREATED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_COMPLETED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_CANCELLED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_ACCEPTED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_REJECTED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"MESSAGE_SENT">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; bodyPreview: z.ZodString; attachmentCount: z.ZodOptional; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"ATTACHMENT_ADDED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; attachmentId: z.ZodString; url: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>], "action">; declare const AdminBookingAuditResponseSchema: z.ZodObject<{ totalCount: z.ZodNumber; pageNumber: z.ZodNumber; pageSize: z.ZodNumber; totalPages: z.ZodNumber; hasPreviousPage: z.ZodBoolean; hasNextPage: z.ZodBoolean; items: z.ZodArray; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"TERMS_MODIFIED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_CREATED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_COMPLETED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_CANCELLED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_ACCEPTED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"BOOKING_REJECTED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; beforeState: z.ZodOptional>; afterState: z.ZodOptional>; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"MESSAGE_SENT">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; bodyPreview: z.ZodString; attachmentCount: z.ZodOptional; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ action: z.ZodLiteral<"ATTACHMENT_ADDED">; details: z.ZodObject<{ reason: z.ZodOptional; ipAddress: z.ZodOptional; userAgent: z.ZodOptional; traceId: z.ZodOptional; messageId: z.ZodString; attachmentId: z.ZodString; url: z.ZodString; mimeType: z.ZodString; sizeBytes: z.ZodNumber; }, z.core.$strip>; timestamp: z.ZodString; actor: z.ZodObject<{ id: z.ZodString; role: z.ZodEnum<{ HOST: "HOST"; VENDOR: "VENDOR"; ADMIN: "ADMIN"; SYSTEM: "SYSTEM"; VIEWER: "VIEWER"; USER: "USER"; }>; }, z.core.$strip>; }, z.core.$strip>], "action">>; }, z.core.$strip>; type BookingAuditStateTransitionDetails = z.infer; type BookingAuditMessageSentDetails = z.infer; type BookingAuditAttachmentAddedDetails = z.infer; type AdminBookingAuditEntry = z.infer; type AdminBookingAuditResponse = z.infer; declare const EventCrewAssignmentState: { readonly DRAFT: "DRAFT"; readonly INVITED: "INVITED"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly EXPIRED: "EXPIRED"; }; type EventCrewAssignmentState = (typeof EventCrewAssignmentState)[keyof typeof EventCrewAssignmentState]; /** `POST /host/events/:eventId/crew-assignments` */ declare const CreateEventCrewAssignmentRequestSchema: z.ZodObject<{ scheduledStartLocal: z.ZodOptional; timezone: z.ZodOptional; durationMinutes: z.ZodOptional>; role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodOptional; vendorId: z.ZodUUID; }, z.core.$strip>; /** * `POST /host/crew-assignments/external` — Direct Hire with no LivDot event. * Title + full schedule are required (there is no event to inherit from). */ declare const CreateExternalEventCrewAssignmentRequestSchema: z.ZodObject<{ role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodOptional; vendorId: z.ZodUUID; title: z.ZodString; scheduledStartLocal: z.ZodISODateTime; timezone: z.ZodString; durationMinutes: z.ZodCoercedNumber; }, z.core.$strip>; /** `PATCH /host/events/:eventId/crew-assignments/:id` */ declare const UpdateEventCrewAssignmentRequestSchema: z.ZodObject<{ scheduledStartLocal: z.ZodOptional>; timezone: z.ZodOptional>; durationMinutes: z.ZodOptional>>; role: z.ZodOptional; responsibilities: z.ZodOptional; requirements: z.ZodOptional; compensation: z.ZodOptional; }, z.core.$strip>>; location: z.ZodOptional>; notes: z.ZodOptional>; }, z.core.$strip>; /** `POST /host/events/:eventId/crew-assignments/:id/replace` */ declare const ReplaceEventCrewAssignmentRequestSchema: z.ZodObject<{ scheduledStartLocal: z.ZodOptional; timezone: z.ZodOptional; durationMinutes: z.ZodOptional>; vendorId: z.ZodUUID; role: z.ZodOptional; responsibilities: z.ZodOptional; requirements: z.ZodOptional; compensation: z.ZodOptional; }, z.core.$strip>>; location: z.ZodOptional>; notes: z.ZodOptional; }, z.core.$strip>; declare const EventCrewAssignmentVendorSummarySchema: z.ZodObject<{ id: z.ZodUUID; companyName: z.ZodString; displayName: z.ZodNullable; avatarUrl: z.ZodNullable; vendorIsVerified: z.ZodBoolean; }, z.core.$strip>; declare const EventCrewAssignmentResponseSchema: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; hostId: z.ZodUUID; vendorId: z.ZodUUID; role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly INVITED: "INVITED"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly EXPIRED: "EXPIRED"; }>; bookingId: z.ZodNullable; invitedAt: z.ZodNullable; respondedAt: z.ZodNullable; rejectReason: z.ZodNullable; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; vendor: z.ZodOptional; avatarUrl: z.ZodNullable; vendorIsVerified: z.ZodBoolean; }, z.core.$strip>>; eventTitle: z.ZodOptional; eventScheduledStartLocal: z.ZodOptional>; scheduledStartLocal: z.ZodOptional>; timezone: z.ZodOptional>; durationMinutes: z.ZodOptional>; }, z.core.$strip>; declare const ListEventCrewAssignmentsResponseSchema: z.ZodObject<{ items: z.ZodArray; hostId: z.ZodUUID; vendorId: z.ZodUUID; role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly INVITED: "INVITED"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly EXPIRED: "EXPIRED"; }>; bookingId: z.ZodNullable; invitedAt: z.ZodNullable; respondedAt: z.ZodNullable; rejectReason: z.ZodNullable; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; vendor: z.ZodOptional; avatarUrl: z.ZodNullable; vendorIsVerified: z.ZodBoolean; }, z.core.$strip>>; eventTitle: z.ZodOptional; eventScheduledStartLocal: z.ZodOptional>; scheduledStartLocal: z.ZodOptional>; timezone: z.ZodOptional>; durationMinutes: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>; /** * `GET /host/events/:eventId/crew-assignments` * Optional Manage Production Team filters. * * Tab mapping (FE): * - All → omit `state` * - Confirmed → `state=ACCEPTED` * - Pending → `state=INVITED` or `state=INVITED,DRAFT` * - Cancelled → `state=CANCELLED` or `state=CANCELLED,REJECTED` */ declare const ListEventCrewAssignmentsQuerySchema: z.ZodObject<{ search: z.ZodOptional; role: z.ZodOptional; state: z.ZodPreprocess>>>; }, z.core.$strip>; /** `POST /marketplace/crew-assignments/:id/reject` */ declare const RejectEventCrewAssignmentRequestSchema: z.ZodObject<{ reason: z.ZodString; }, z.core.$strip>; declare const AcceptEventCrewAssignmentResponseSchema: z.ZodObject<{ assignment: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; hostId: z.ZodUUID; vendorId: z.ZodUUID; role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly INVITED: "INVITED"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly EXPIRED: "EXPIRED"; }>; bookingId: z.ZodNullable; invitedAt: z.ZodNullable; respondedAt: z.ZodNullable; rejectReason: z.ZodNullable; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; vendor: z.ZodOptional; avatarUrl: z.ZodNullable; vendorIsVerified: z.ZodBoolean; }, z.core.$strip>>; eventTitle: z.ZodOptional; eventScheduledStartLocal: z.ZodOptional>; scheduledStartLocal: z.ZodOptional>; timezone: z.ZodOptional>; durationMinutes: z.ZodOptional>; }, z.core.$strip>; bookingId: z.ZodUUID; }, z.core.$strip>; declare const ReplaceEventCrewAssignmentResponseSchema: z.ZodObject<{ assignment: z.ZodObject<{ id: z.ZodUUID; eventId: z.ZodNullable; hostId: z.ZodUUID; vendorId: z.ZodUUID; role: z.ZodString; responsibilities: z.ZodString; requirements: z.ZodString; compensation: z.ZodObject<{ amountMinor: z.ZodString; currency: z.ZodEnum<{ readonly NGN: "NGN"; readonly USD: "USD"; readonly GBP: "GBP"; readonly EUR: "EUR"; }>; }, z.core.$strip>; location: z.ZodEnum<{ readonly ONSITE: "ONSITE"; readonly REMOTE: "REMOTE"; }>; notes: z.ZodNullable; state: z.ZodEnum<{ readonly DRAFT: "DRAFT"; readonly INVITED: "INVITED"; readonly ACCEPTED: "ACCEPTED"; readonly REJECTED: "REJECTED"; readonly CANCELLED: "CANCELLED"; readonly EXPIRED: "EXPIRED"; }>; bookingId: z.ZodNullable; invitedAt: z.ZodNullable; respondedAt: z.ZodNullable; rejectReason: z.ZodNullable; createdAt: z.ZodISODateTime; updatedAt: z.ZodISODateTime; vendor: z.ZodOptional; avatarUrl: z.ZodNullable; vendorIsVerified: z.ZodBoolean; }, z.core.$strip>>; eventTitle: z.ZodOptional; eventScheduledStartLocal: z.ZodOptional>; scheduledStartLocal: z.ZodOptional>; timezone: z.ZodOptional>; durationMinutes: z.ZodOptional>; }, z.core.$strip>; replacedBookingId: z.ZodUUID; }, z.core.$strip>; type CreateEventCrewAssignmentRequest = z.infer; type CreateExternalEventCrewAssignmentRequest = z.infer; type UpdateEventCrewAssignmentRequest = z.infer; type EventCrewAssignmentResponse = z.infer; type ListEventCrewAssignmentsResponse = z.infer; type ListEventCrewAssignmentsQuery = z.infer; type RejectEventCrewAssignmentRequest = z.infer; type AcceptEventCrewAssignmentResponse = z.infer; type ReplaceEventCrewAssignmentRequest = z.infer; type ReplaceEventCrewAssignmentResponse = z.infer; export { type AcceptEventCrewAssignmentResponse, AcceptEventCrewAssignmentResponseSchema, type AdminBookingAuditEntry, AdminBookingAuditEntrySchema, type AdminBookingAuditResponse, AdminBookingAuditResponseSchema, BOOKING_TERMINAL_STATES, BOOKING_TRANSITION_ACTORS, BOOKING_TRANSITION_TARGETS_REQUIRING_REASON, BookingAuditAction, BookingAuditActorSchema, type BookingAuditAttachmentAddedDetails, BookingAuditAttachmentAddedDetailsSchema, type BookingAuditMessageSentDetails, BookingAuditMessageSentDetailsSchema, BookingAuditRequestMetadataSchema, BookingAuditSnapshotSchema, type BookingAuditStateTransitionDetails, BookingAuditStateTransitionDetailsSchema, BookingOrigin, BookingPaymentStatus, type BookingResponse, BookingResponseSchema, BookingState, BookingTransitionActor, type BookingTransitionKey, type CancelMarketplaceJobListingRequest, CancelMarketplaceJobListingRequestSchema, type CancelMarketplaceJobListingResponse, CancelMarketplaceJobListingResponseSchema, type CloseMarketplaceJobListingResponse, CloseMarketplaceJobListingResponseSchema, type CompleteMarketplaceBookingRequest, CompleteMarketplaceBookingRequestSchema, type CompleteMarketplaceBookingResponse, CompleteMarketplaceBookingResponseSchema, type ConfirmBookingRequest, ConfirmBookingRequestSchema, type CreateBookingRequest, CreateBookingRequestSchema, type CreateEventCrewAssignmentRequest, CreateEventCrewAssignmentRequestSchema, type CreateExternalEventCrewAssignmentRequest, CreateExternalEventCrewAssignmentRequestSchema, type CreateJobListingRequest, CreateJobListingRequestSchema, type CreateMarketplaceBookingRequest, CreateMarketplaceBookingRequestSchema, type CreateMarketplaceBookingResponse, CreateMarketplaceBookingResponseSchema, type CreateMarketplaceJobListingRequest, CreateMarketplaceJobListingRequestSchema, type CreateMarketplaceReviewRequest, CreateMarketplaceReviewRequestSchema, type DeleteMarketplaceHiringThreadMessageAttachmentResponse, DeleteMarketplaceHiringThreadMessageAttachmentResponseSchema, type DeleteMarketplaceHiringThreadPendingAttachmentRequest, DeleteMarketplaceHiringThreadPendingAttachmentRequestSchema, type EventCrewAssignmentResponse, EventCrewAssignmentResponseSchema, EventCrewAssignmentState, EventCrewAssignmentVendorSummarySchema, type ForceCompleteMarketplaceBookingRequest, ForceCompleteMarketplaceBookingRequestSchema, type GetMarketplaceHiringThreadResponse, GetMarketplaceHiringThreadResponseSchema, HostIndicationOfInterestSortBy, IoiState, JobListingCompensationTier, type JobListingResponse, JobListingResponseSchema, JobListingState, JobLocation, type ListEventCrewAssignmentsQuery, ListEventCrewAssignmentsQuerySchema, type ListEventCrewAssignmentsResponse, ListEventCrewAssignmentsResponseSchema, type ListHostMarketplaceIndicationsQuery, ListHostMarketplaceIndicationsQuerySchema, type ListHostMarketplaceJobListingsQuery, ListHostMarketplaceJobListingsQuerySchema, type ListMarketplaceHiringThreadMessagesQuery, ListMarketplaceHiringThreadMessagesQuerySchema, type ListMarketplaceHiringThreadMessagesResponse, ListMarketplaceHiringThreadMessagesResponseSchema, type ListMarketplaceHiringThreadsResponse, ListMarketplaceHiringThreadsResponseSchema, type ListMarketplaceJobListingsQuery, ListMarketplaceJobListingsQuerySchema, type ListVendorJobsQuery, ListVendorJobsQuerySchema, type ListVendorMarketplaceIndicationsQuery, ListVendorMarketplaceIndicationsQuerySchema, type ListVendorReviewsQuery, ListVendorReviewsQuerySchema, type MarkMarketplaceHiringThreadReadRequest, MarkMarketplaceHiringThreadReadRequestSchema, type MarkMarketplaceHiringThreadReadResponse, MarkMarketplaceHiringThreadReadResponseSchema, type MarketplaceBookingAssignedEvent, MarketplaceBookingAssignedEventSchema, type MarketplaceBookingResponse, MarketplaceBookingResponseSchema, type MarketplaceHiringMessage, MarketplaceHiringMessageAttachmentSchema, MarketplaceHiringMessageSchema, type MarketplaceHiringThread, MarketplaceHiringThreadAttachmentFileNameSchema, type MarketplaceHiringThreadInboxItem, MarketplaceHiringThreadInboxItemSchema, type MarketplaceHiringThreadPendingAttachment, MarketplaceHiringThreadPendingAttachmentSchema, MarketplaceHiringThreadSchema, type MarketplaceHostIndicationOfInterestInboxItem, MarketplaceHostIndicationOfInterestInboxItemSchema, type MarketplaceIndicationOfInterestHostItem, MarketplaceIndicationOfInterestHostItemSchema, type MarketplaceIndicationOfInterestResponse, MarketplaceIndicationOfInterestResponseSchema, type MarketplaceJobListingResponse, MarketplaceJobListingResponseSchema, type MarketplaceReviewResponse, MarketplaceReviewResponseSchema, type MarketplaceVendorIndicationOfInterestInboxItem, MarketplaceVendorIndicationOfInterestInboxItemSchema, MessageDeliveryStatus, type OpenMarketplaceJobListingResponse, OpenMarketplaceJobListingResponseSchema, type PagedVendorReviewsResponse, PagedVendorReviewsResponseSchema, type PostMarketplaceHiringThreadMessageRequest, PostMarketplaceHiringThreadMessageRequestSchema, type PostMarketplaceHiringThreadMessageResponse, PostMarketplaceHiringThreadMessageResponseSchema, type PublishMarketplaceJobListingResponse, PublishMarketplaceJobListingResponseSchema, type PublishReadyJobListing, PublishReadyJobListingSchema, type RejectEventCrewAssignmentRequest, RejectEventCrewAssignmentRequestSchema, type ReplaceEventCrewAssignmentRequest, ReplaceEventCrewAssignmentRequestSchema, type ReplaceEventCrewAssignmentResponse, ReplaceEventCrewAssignmentResponseSchema, SortOrder, type StartMarketplaceHiringThreadRequest, StartMarketplaceHiringThreadRequestSchema, type SubmitMarketplaceIndicationOfInterestRequest, SubmitMarketplaceIndicationOfInterestRequestSchema, type TransitionMarketplaceBookingRequest, TransitionMarketplaceBookingRequestSchema, type TransitionMarketplaceBookingResponse, TransitionMarketplaceBookingResponseSchema, type UpdateEventCrewAssignmentRequest, UpdateEventCrewAssignmentRequestSchema, type UpdateMarketplaceJobListingRequest, UpdateMarketplaceJobListingRequestSchema, type UploadMarketplaceHiringThreadAttachmentResponse, UploadMarketplaceHiringThreadAttachmentResponseSchema, VALID_BOOKING_TRANSITIONS, type VendorJobRow, type VendorJobRowKind, VendorJobRowKindSchema, VendorJobRowSchema, type VendorJobRowStatus, VendorJobRowStatusSchema, type VendorJobsTab, type VendorJobsTabCountsResponse, VendorJobsTabCountsResponseSchema, type VendorJobsTabResponse, VendorJobsTabResponseSchema, VendorJobsTabSchema, type VendorRecentReview, VendorRecentReviewSchema, bookingTransitionKey, bookingTransitionRequiresReason, canActorPerformBookingTransition, getAllowedBookingTargetStates, getBookingTransitionActors, isValidBookingTransition };