/**
 * This code was generated by
 * \ / _    _  _|   _  _
 *  | (_)\/(_)(_|\/| |(/_  v1.0.0
 *       /       /
 */

import FlexApi = require('../FlexApi');
import Version = require('../../base/Version');
import { ChannelList } from './v1/channel';
import { ChannelListInstance } from './v1/channel';
import { ConfigurationList } from './v1/configuration';
import { ConfigurationListInstance } from './v1/configuration';
import { FlexFlowList } from './v1/flexFlow';
import { FlexFlowListInstance } from './v1/flexFlow';
import { InteractionList } from './v1/interaction';
import { InteractionListInstance } from './v1/interaction';
import { WebChannelList } from './v1/webChannel';
import { WebChannelListInstance } from './v1/webChannel';


declare class V1 extends Version {
  /**
   * Initialize the V1 version of FlexApi
   *
   * @param domain - The twilio domain
   */
  constructor(domain: FlexApi);

  readonly channel: ChannelListInstance;
  readonly configuration: ConfigurationListInstance;
  readonly flexFlow: FlexFlowListInstance;
  readonly interaction: InteractionListInstance;
  readonly webChannel: WebChannelListInstance;
}

export = V1;
