version: "1.0.1" name: defining-typescript-models description: Defines standard TypeScript interfaces for Appwrite Collections. Use when creating new models for Tours, Users, or Bookings to ensure full type safety.
typescript
import { Models } from 'appwrite';
export interface Tour extends Models.Document {
title: string;
description: string;
price: number;
location: string;
images: string[];
rating: number;
availableDates: string[]; // ISO Strings
}
export type BookingStatus = 'pending' | 'confirmed' | 'cancelled';
export interface Booking extends Models.Document {
userId: string;
tourId: string;
status: BookingStatus;
totalPrice: number;
}