@seatsio/seatsio-types 6.25.0 → 6.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.d.ts +22 -10
  2. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -100,6 +100,10 @@ export interface ChartRendererConfigOptions extends DeprecatedConfigProperties,
100
100
  * Defines the available listing types, each with an optional icon and label.
101
101
  */
102
102
  listingTypes?: ListingTypes;
103
+ /**
104
+ * Dims out the objects that don't pass every filter. Filtered-out objects stay selectable.
105
+ */
106
+ filters?: Filters;
103
107
  /**
104
108
  * Formats the price into a custom defined string when showing it to and en user. {@link https://docs.seats.io/docs/renderer/config-priceformatter See documentation}
105
109
  */
@@ -579,7 +583,7 @@ export interface ChartDesignerFeatures {
579
583
  }
580
584
  export interface ChartDesigner extends Pick<SeatingChart, 'render' | 'destroy'> {
581
585
  }
582
- export type ConfigChange = Pick<ChartRendererConfigOptions, 'availableCategories' | 'channels' | 'extraConfig' | 'filteredCategories' | 'maxSelectedObjects' | 'numberOfPlacesToSelect' | 'objectColor' | 'objectLabel' | 'pricing' | 'unavailableCategories'>;
586
+ export type ConfigChange = Pick<ChartRendererConfigOptions, 'availableCategories' | 'channels' | 'extraConfig' | 'filteredCategories' | 'filters' | 'maxSelectedObjects' | 'numberOfPlacesToSelect' | 'objectColor' | 'objectLabel' | 'pricing' | 'unavailableCategories'>;
583
587
  type ChartRendererBuiltInStrings = {
584
588
  [key in ChartRendererStringKey]: string;
585
589
  };
@@ -1043,6 +1047,7 @@ export interface InteractiveObject {
1043
1047
  readonly floor?: string;
1044
1048
  readonly zone?: string;
1045
1049
  }
1050
+ export type TableType = 'bookByTable' | 'bookBySeat' | 'variableOccupancy' | 'generalAdmission';
1046
1051
  export interface NonBookableTable extends InteractiveObject {
1047
1052
  readonly seats: Seat[];
1048
1053
  readonly center: {
@@ -1050,6 +1055,7 @@ export interface NonBookableTable extends InteractiveObject {
1050
1055
  y: number;
1051
1056
  };
1052
1057
  readonly category?: CategoryToJSON;
1058
+ readonly tableType: TableType;
1053
1059
  }
1054
1060
  export interface NonBookableTableSeat extends InteractiveObject {
1055
1061
  readonly center: {
@@ -1064,23 +1070,15 @@ export interface NonBookableTableSeat extends InteractiveObject {
1064
1070
  };
1065
1071
  }
1066
1072
  export type WheelchairSpaceType = 'WHEELCHAIR_ACCESSIBLE_SEAT' | 'WHEELCHAIR_SPACE';
1067
- export interface AbstractSelectableObject extends InteractiveObject {
1073
+ export interface AbstractSelectableObject extends InteractiveObject, Readonly<Record<FilterableAccessibleType, boolean | undefined>> {
1068
1074
  readonly objectType: string;
1069
1075
  readonly selected: boolean;
1070
1076
  readonly selectedTicketType: string | undefined;
1071
- readonly accessible: boolean | undefined;
1072
1077
  readonly wheelchairSpaceType: WheelchairSpaceType | undefined;
1073
- readonly hearingImpaired: boolean | undefined;
1074
- readonly signLanguageInterpretation: boolean | undefined;
1075
- readonly cartServices: boolean | undefined;
1076
- readonly plusSize: boolean | undefined;
1077
1078
  readonly restrictedView: boolean | undefined;
1078
1079
  readonly vertigo: boolean | undefined;
1079
1080
  readonly limitedLegroom: boolean | undefined;
1080
1081
  readonly companionSeat: boolean | undefined;
1081
- readonly semiAmbulatorySeat: boolean | undefined;
1082
- readonly liftUpArmrests: boolean | undefined;
1083
- readonly aisleSeat: boolean | undefined;
1084
1082
  readonly displayObjectType: string | undefined;
1085
1083
  readonly category?: CategoryToJSON;
1086
1084
  readonly pricing: PricingJson;
@@ -1144,6 +1142,7 @@ export interface Table extends AbstractBookableObject {
1144
1142
  x: number;
1145
1143
  y: number;
1146
1144
  };
1145
+ readonly tableType: TableType;
1147
1146
  }
1148
1147
  export type GeneralAdmissionAreaType = 'generalAdmission' | 'fixedOccupancy' | 'variableOccupancy';
1149
1148
  export interface GeneralAdmissionArea extends AbstractBookableObject {
@@ -1251,6 +1250,19 @@ export interface ListingType {
1251
1250
  iconColor?: string;
1252
1251
  }
1253
1252
  export type ListingTypes = Dict<ListingType>;
1253
+ export type FilterableAccessibleType = 'accessible' | 'semiAmbulatorySeat' | 'hearingImpaired' | 'signLanguageInterpretation' | 'cartServices' | 'plusSize' | 'liftUpArmrests' | 'aisleSeat';
1254
+ export type ListingTypeFilter = 'primary' | 'resale' | 'both';
1255
+ export interface Filters {
1256
+ price?: {
1257
+ min?: number;
1258
+ max?: number;
1259
+ };
1260
+ categories?: CategoryKey[];
1261
+ ticketTypes?: string[];
1262
+ sections?: string[];
1263
+ accessibilityTypes?: FilterableAccessibleType[];
1264
+ listingType?: ListingTypeFilter;
1265
+ }
1254
1266
  export declare function isBooth(object: SelectableObject): object is Booth;
1255
1267
  export declare function isSeat(object: SelectableObject): object is Seat;
1256
1268
  export declare function isGeneralAdmission(object: SelectableObject): object is GeneralAdmissionArea;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@seatsio/seatsio-types",
3
3
  "description": "Type definitions for Seats.io",
4
- "version": "6.25.0",
4
+ "version": "6.27.0",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",