reactredux/clientapp/src/httpQueries/models.ts

62 lines
1.0 KiB
TypeScript

export interface IFetchResult {
status: number,
text: string
}
export interface IImageModel {
src: string,
alt: string
}
export interface IAuthorModel {
id: string,
image?: IImageModel,
nickName: string
}
interface IPostItemModel {
id: string,
slug: string,
badge?: string,
image?: IImageModel,
title: string,
shortText: string,
text: string,
author: IAuthorModel,
created: string,
tags: string[]
}
export interface IBlogItemModel extends IPostItemModel {
readTime: number,
likes: number
}
export interface IShopItemModel extends IPostItemModel {
images?: IImageModel [],
sku: string,
rating?: number,
price: number,
newPrice?: number,
quantity?: number
}
interface IPostPaginationModel {
currentPage: number,
totalPages: number
}
export interface IBlogItemsPaginationModel extends IPostPaginationModel {
items: IBlogItemModel []
}
export interface IShopItemsPaginationModel extends IPostPaginationModel {
items: IShopItemModel []
}
export interface ICategoryModel {
id: string,
text: string
}