Skip to content

Seats

Seat capacity benefit schema and validated constructor; constructing terms does not assign members or authorize access.

const Seats: Schema.Union<readonly [Schema.Struct<{
pool: Schema.brand<Schema.String, "SeatPoolKey">;
quantity: Schema.Union<readonly [Schema.brand<Schema.Int, "SeatCapacityQuantity">, Schema.Literal<"purchase_quantity">]>;
entitlement: Schema.brand<Schema.String, "EntitlementKey">;
validity: Schema.Literal<"while_entitled">;
type: Schema.tag<"seat_capacity">;
}>]> & {
discriminants: readonly ["seat_capacity"];
cases: {
seat_capacity: Schema.Struct<{
pool: Schema.brand<Schema.String, "SeatPoolKey">;
quantity: Schema.Union<readonly [Schema.brand<Schema.Int, "SeatCapacityQuantity">, Schema.Literal<"purchase_quantity">]>;
entitlement: Schema.brand<Schema.String, "EntitlementKey">;
validity: Schema.Literal<"while_entitled">;
type: Schema.tag<"seat_capacity">;
}>;
};
isAnyOf: <Keys>(keys) => (value) => value is Extract<{ pool: string & any; quantity: "purchase_quantity" | number & any; entitlement: string & any; validity: "while_entitled"; type: "seat_capacity" }, { type: Keys }>;
guards: {
seat_capacity: (u) => u is { pool: string & any; quantity: "purchase_quantity" | number & any; entitlement: string & any; validity: "while_entitled"; type: "seat_capacity" };
};
match: {
<Cases> (value, cases): Cases[keyof Cases] extends (value) => R ? any : never;
<Cases> (cases): (value) => Cases[keyof Cases] extends (value) => R ? any : never;
};
} & {
capacity: (input) => Effect.Effect<typeof SeatBenefit.Type, Schema.SchemaError>;
};
readonly discriminants: readonly ["seat_capacity"];
readonly cases: {
seat_capacity: Schema.Struct<{
pool: Schema.brand<Schema.String, "SeatPoolKey">;
quantity: Schema.Union<readonly [Schema.brand<Schema.Int, "SeatCapacityQuantity">, Schema.Literal<"purchase_quantity">]>;
entitlement: Schema.brand<Schema.String, "EntitlementKey">;
validity: Schema.Literal<"while_entitled">;
type: Schema.tag<"seat_capacity">;
}>;
};
seat_capacity: Schema.Struct<{
pool: Schema.brand<Schema.String, "SeatPoolKey">;
quantity: Schema.Union<readonly [Schema.brand<Schema.Int, "SeatCapacityQuantity">, Schema.Literal<"purchase_quantity">]>;
entitlement: Schema.brand<Schema.String, "EntitlementKey">;
validity: Schema.Literal<"while_entitled">;
type: Schema.tag<"seat_capacity">;
}>;
readonly isAnyOf: <Keys>(keys) => (value) => value is Extract<{ pool: string & any; quantity: "purchase_quantity" | number & any; entitlement: string & any; validity: "while_entitled"; type: "seat_capacity" }, { type: Keys }>;

Keys

readonly Keys[]

(value) => value is Extract<{ pool: string & any; quantity: “purchase_quantity” | number & any; entitlement: string & any; validity: “while_entitled”; type: “seat_capacity” }, { type: Keys }>

readonly guards: {
seat_capacity: (u) => u is { pool: string & any; quantity: "purchase_quantity" | number & any; entitlement: string & any; validity: "while_entitled"; type: "seat_capacity" };
};
seat_capacity: (u) => u is { pool: string & any; quantity: "purchase_quantity" | number & any; entitlement: string & any; validity: "while_entitled"; type: "seat_capacity" };

unknown

u is { pool: string & any; quantity: “purchase_quantity” | number & any; entitlement: string & any; validity: “while_entitled”; type: “seat_capacity” }

readonly match: {
<Cases> (value, cases): Cases[keyof Cases] extends (value) => R ? any : never;
<Cases> (cases): (value) => Cases[keyof Cases] extends (value) => R ? any : never;
};
<Cases>(value, cases): Cases[keyof Cases] extends (value) => R ? any : never;

Cases extends { [key: string]: (value) => any; }

string & any

"purchase_quantity" | number & any

string & any

"while_entitled"

"seat_capacity"

Cases

Cases[keyof Cases] extends (value) => R ? any : never

<Cases>(cases): (value) => Cases[keyof Cases] extends (value) => R ? any : never;

Cases extends { [key: string]: (value) => any; }

Cases

(value) => Cases[keyof Cases] extends (value) => R ? any : never

capacity: (input) => Effect.Effect<typeof SeatBenefit.Type, Schema.SchemaError>;

Parses seat capacity associated with a same-purchase entitlement.

Omit<typeof SeatBenefit.Encoded, "type" | "validity">

Effect.Effect<typeof SeatBenefit.Type, Schema.SchemaError>