import { IJsonApiResponse, IJsonApiResource } from "../../interfaces"; export declare const productType = "product"; export interface IProductAttributes { authors?: string[]; category?: string; descriptions?: { long_description?: string; short_description?: string; }; digital?: boolean; edition?: number; images?: { original?: string; small?: string[]; medium?: string[]; large?: string[]; }; is_bundle?: boolean; is_chapter?: boolean; isbn?: string; page_colour_count?: number; page_count?: number; page_maps_count?: number; pricing?: Array<{ amount?: number; currency?: string; }>; product_type?: string; release_date?: string; score?: number; title?: string; } export interface IProductResource extends IJsonApiResource { } export interface IProductResponse extends IJsonApiResponse { } export interface IProductPrice { amount?: number; currency?: string; } export interface IProduct { id?: string; type?: string; authors?: string[]; category?: string; descriptions?: { longDescription?: string; shortDescription?: string; }; edition?: number; images?: { original?: string; small?: string[]; medium?: string[]; large?: string[]; }; isBundle?: boolean; isChapter?: boolean; isDigital?: boolean; isbn?: string; pageColourCount?: number; pageCount?: number; pageMapsCount?: number; pricing?: IProductPrice[]; productType?: string; releaseDate?: Date; score?: number; shop?: string; title?: string; containingPlaceIds?: string[]; containingCityName?: string; containingContinentName?: string; containingCountryName?: string; containingNeighborhoodName?: string; containingRegionNames?: string[]; } export default class Product implements IProduct { id?: string; type?: string; authors?: string[]; category?: string; descriptions?: { longDescription?: string; shortDescription?: string; }; edition?: number; images?: { original?: string; small?: string[]; medium?: string[]; large?: string[]; }; isBundle?: boolean; isChapter?: boolean; isDigital?: boolean; isbn?: string; pageColourCount?: number; pageCount?: number; pageMapsCount?: number; pricing?: IProductPrice[]; productType?: string; releaseDate?: Date; score?: number; shop?: string; title?: string; containingPlaceIds?: string[]; containingCityName?: string; containingContinentName?: string; containingCountryName?: string; containingNeighborhoodName?: string; containingRegionNames?: string[]; constructor(options?: IProduct); }