import { IBaseFleioObjectModel } from '../../base-model/base-fleio-object.model';
import { IProductCycleModel } from './product-cycle.model';
import { IBillingModuleModel } from './billing-module.model';
import { IConfigOptionModel } from '@fleio-api/billing/model/config-option.model';

export interface IProductModel extends IBaseFleioObjectModel {
  cycles: IProductCycleModel[];
  module: IBillingModuleModel;
  price_model_display: string;
  auto_setup_display: string;
  name: string;
  description: string;
  code: string;
  product_type: string;
  status: string;
  billing_type: string;
  price_model: string;
  auto_setup: string;
  taxable: boolean;
  requires_domain: boolean;
  hide_services: boolean;
  group: {id: string; name?: string; description?: string};
  configurable_options: IConfigOptionModel[];
  upgrades: [];
}
