declare namespace API { 
 | 
  type ApiResponse = { 
 | 
    code?: number; 
 | 
    type?: string; 
 | 
    message?: string; 
 | 
  }; 
 | 
  
 | 
  type Category = { 
 | 
    id?: number; 
 | 
    name?: string; 
 | 
  }; 
 | 
  
 | 
  type deleteOrderParams = { 
 | 
    /** ID of the order that needs to be deleted */ 
 | 
    orderId: number; 
 | 
  }; 
 | 
  
 | 
  type deletePetParams = { 
 | 
    api_key?: string; 
 | 
    /** Pet id to delete */ 
 | 
    petId: number; 
 | 
  }; 
 | 
  
 | 
  type deleteUserParams = { 
 | 
    /** The name that needs to be deleted */ 
 | 
    username: string; 
 | 
  }; 
 | 
  
 | 
  type findPetsByStatusParams = { 
 | 
    /** Status values that need to be considered for filter */ 
 | 
    status: ('available' | 'pending' | 'sold')[]; 
 | 
  }; 
 | 
  
 | 
  type findPetsByTagsParams = { 
 | 
    /** Tags to filter by */ 
 | 
    tags: string[]; 
 | 
  }; 
 | 
  
 | 
  type getOrderByIdParams = { 
 | 
    /** ID of pet that needs to be fetched */ 
 | 
    orderId: number; 
 | 
  }; 
 | 
  
 | 
  type getPetByIdParams = { 
 | 
    /** ID of pet to return */ 
 | 
    petId: number; 
 | 
  }; 
 | 
  
 | 
  type getUserByNameParams = { 
 | 
    /** The name that needs to be fetched. Use user1 for testing.  */ 
 | 
    username: string; 
 | 
  }; 
 | 
  
 | 
  type loginUserParams = { 
 | 
    /** The user name for login */ 
 | 
    username: string; 
 | 
    /** The password for login in clear text */ 
 | 
    password: string; 
 | 
  }; 
 | 
  
 | 
  type Order = { 
 | 
    id?: number; 
 | 
    petId?: number; 
 | 
    quantity?: number; 
 | 
    shipDate?: string; 
 | 
    /** Order Status */ 
 | 
    status?: 'placed' | 'approved' | 'delivered'; 
 | 
    complete?: boolean; 
 | 
  }; 
 | 
  
 | 
  type Pet = { 
 | 
    id?: number; 
 | 
    category?: Category; 
 | 
    name: string; 
 | 
    photoUrls: string[]; 
 | 
    tags?: Tag[]; 
 | 
    /** pet status in the store */ 
 | 
    status?: 'available' | 'pending' | 'sold'; 
 | 
  }; 
 | 
  
 | 
  type Tag = { 
 | 
    id?: number; 
 | 
    name?: string; 
 | 
  }; 
 | 
  
 | 
  type updatePetWithFormParams = { 
 | 
    /** ID of pet that needs to be updated */ 
 | 
    petId: number; 
 | 
  }; 
 | 
  
 | 
  type updateUserParams = { 
 | 
    /** name that need to be updated */ 
 | 
    username: string; 
 | 
  }; 
 | 
  
 | 
  type uploadFileParams = { 
 | 
    /** ID of pet to update */ 
 | 
    petId: number; 
 | 
  }; 
 | 
  
 | 
  type User = { 
 | 
    id?: number; 
 | 
    username?: string; 
 | 
    firstName?: string; 
 | 
    lastName?: string; 
 | 
    email?: string; 
 | 
    password?: string; 
 | 
    phone?: string; 
 | 
    /** User Status */ 
 | 
    userStatus?: number; 
 | 
  }; 
 | 
} 
 |