bw-expo-app/lib/types/template.ts

56 lines
967 B
TypeScript

export interface Category {
id: string;
name: string;
nameEn: string;
createdAt: string;
updatedAt: string;
}
export interface Tag {
id: string;
name: string;
nameEn: string;
description: string;
descriptionEn: string;
createdAt: string;
updatedAt: string;
}
export interface Template {
id: string;
title: string;
titleEn: string;
description: string;
descriptionEn: string;
coverImageUrl: string;
previewUrl: string;
aspectRatio: string;
userId: string;
categoryId: string;
content?: unknown;
formSchema?: unknown;
status: string;
createdAt: string;
updatedAt: string;
category: Category | null;
tags: Tag[];
}
export interface PaginationMeta {
page: number;
size: number;
total: number;
totalPages: number;
}
export interface TemplatesResponse {
success: boolean;
data: Template[];
pagination: PaginationMeta;
}
export interface TemplateResponse {
success: boolean;
data: Template;
}