import { IAccountTitle } from './accountTitle'; import { ICategoryCode } from './categoryCode'; import { CreativeWorkType } from './creativeWorkType'; import type { ICustomer } from './customer'; import { EventType } from './eventType'; import { IMultilingualString } from './multilingualString'; import { IOfferCatalog } from './offerCatalog'; import { OfferType } from './offerType'; import { PlaceType } from './placeType'; import { ProductType } from './product'; import { IProject } from './project'; import { ISeller } from './seller'; import { SortType } from './sortType'; import { IThing } from './thing'; export type CategoryCodeType = ICategoryCode['typeOf']; export type OfferCatalogType = IOfferCatalog['typeOf']; export type SellerType = ISeller['typeOf']; export type CustomerType = ICustomer['typeOf']; export type AccountTitleType = IAccountTitle['typeOf']; export type CategorySetIdentifier = CategoryCodeType | CreativeWorkType.Movie | EventType.ScreeningEvent | EventType.ScreeningEventSeries | OfferCatalogType | OfferType.Offer | PlaceType.MovieTheater | PlaceType.ScreeningRoom | PlaceType.ScreeningRoomSection | PlaceType.Seat | SellerType | CustomerType | AccountTitleType | ProductType.EventService; /** * {@link https://schema.org/CategoryCodeSet} */ export interface ICategoryCodeSet { typeOf: 'CategoryCodeSet'; identifier: CategorySetIdentifier; } /** * {@link https://schema.org/CategoryCode} */ export interface IAdditionalProperty extends Pick { project: Pick; id?: string; typeOf: 'CategoryCode'; codeValue: string; inCodeSet: ICategoryCodeSet; name: IMultilingualString; } /** * 検索条件 */ export interface ISearchConditions { limit?: number; page?: number; sort?: { codeValue?: SortType; }; project?: { id?: { $eq?: string; }; }; id?: { $eq?: string; }; name?: { $regex?: string; }; codeValue?: { $eq?: string; $in?: string[]; }; inCodeSet?: { identifier?: { $eq?: string; $in?: string[]; }; }; }