// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`break.js 1`] = `
====================================options=====================================
parsers: ["flow", "typescript"]
printWidth: 80
                                                                                | printWidth
=====================================input======================================
export interface Environment1 extends GenericEnvironment<
  SomeType,
  AnotherType,
  YetAnotherType,
> {
  m(): void;
};
export class Environment2 extends GenericEnvironment<
  SomeType,
  AnotherType,
  YetAnotherType,
  DifferentType1,
  DifferentType2,
  DifferentType3,
  DifferentType4,
> {
  m() {};
};

// Declare Interface Break
declare interface ExtendsOne extends ASingleInterface {
  x: string;
}

declare interface ExtendsLarge extends ASingleInterfaceWithAReallyReallyReallyReallyLongName {
  x: string;
}

declare interface ExtendsMany extends Interface1, Interface2, Interface3, Interface4, Interface5, Interface6, Interface7 {
  x: string;
}

// Interface declaration break
interface ExtendsOne extends ASingleInterface {
  x: string;
}

interface ExtendsLarge extends ASingleInterfaceWithAReallyReallyReallyReallyLongName {
  x: string;
}

interface ExtendsMany extends Interface1, Interface2, Interface3, Interface4, Interface5, Interface6, Interface7 {
  s: string;
}

// Generic Types
interface ExtendsOne extends ASingleInterface<string> {
  x: string;
}

interface ExtendsLarge extends ASingleInterfaceWithAReallyReallyReallyReallyLongName<string> {
  x: string;
}

interface ExtendsMany
  extends ASingleGenericInterface<Interface1, Interface2, Interface3, Interface4, Interface5, Interface6, Interface7> {
  x: string;
}

interface ExtendsManyWithGenerics
  extends InterfaceOne, InterfaceTwo, ASingleGenericInterface<Interface1, Interface2, Interface3, Interface4, Interface5, Interface6, Interface7>, InterfaceThree {

    x: string;
  }

export interface ExtendsLongOneWithGenerics extends Bar< SomeLongTypeSomeLongTypeSomeLongTypeSomeLongType,  ToBreakLineToBreakLineToBreakLine> {}

=====================================output=====================================
export interface Environment1
  extends GenericEnvironment<SomeType, AnotherType, YetAnotherType> {
  m(): void;
}
export class Environment2 extends GenericEnvironment<
  SomeType,
  AnotherType,
  YetAnotherType,
  DifferentType1,
  DifferentType2,
  DifferentType3,
  DifferentType4
> {
  m() {}
}

// Declare Interface Break
declare interface ExtendsOne extends ASingleInterface {
  x: string;
}

declare interface ExtendsLarge
  extends ASingleInterfaceWithAReallyReallyReallyReallyLongName {
  x: string;
}

declare interface ExtendsMany
  extends Interface1,
    Interface2,
    Interface3,
    Interface4,
    Interface5,
    Interface6,
    Interface7 {
  x: string;
}

// Interface declaration break
interface ExtendsOne extends ASingleInterface {
  x: string;
}

interface ExtendsLarge
  extends ASingleInterfaceWithAReallyReallyReallyReallyLongName {
  x: string;
}

interface ExtendsMany
  extends Interface1,
    Interface2,
    Interface3,
    Interface4,
    Interface5,
    Interface6,
    Interface7 {
  s: string;
}

// Generic Types
interface ExtendsOne extends ASingleInterface<string> {
  x: string;
}

interface ExtendsLarge
  extends ASingleInterfaceWithAReallyReallyReallyReallyLongName<string> {
  x: string;
}

interface ExtendsMany
  extends ASingleGenericInterface<
    Interface1,
    Interface2,
    Interface3,
    Interface4,
    Interface5,
    Interface6,
    Interface7
  > {
  x: string;
}

interface ExtendsManyWithGenerics
  extends InterfaceOne,
    InterfaceTwo,
    ASingleGenericInterface<
      Interface1,
      Interface2,
      Interface3,
      Interface4,
      Interface5,
      Interface6,
      Interface7
    >,
    InterfaceThree {
  x: string;
}

export interface ExtendsLongOneWithGenerics
  extends Bar<
    SomeLongTypeSomeLongTypeSomeLongTypeSomeLongType,
    ToBreakLineToBreakLineToBreakLine
  > {}

================================================================================
`;

exports[`module.js 1`] = `
====================================options=====================================
parsers: ["flow", "typescript"]
printWidth: 80
                                                                                | printWidth
=====================================input======================================
declare module X {
  declare interface Y { x: number; }
}

=====================================output=====================================
declare module X {
  declare interface Y {
    x: number;
  }
}

================================================================================
`;
