=== tests/cases/compiler/contextualTypeArrayReturnType.ts === interface IBookStyle { >IBookStyle : IBookStyle initialLeftPageTransforms?: (width: number) => NamedTransform[]; >initialLeftPageTransforms : (width: number) => NamedTransform[] >width : number >NamedTransform : NamedTransform } interface NamedTransform { >NamedTransform : NamedTransform [name: string]: Transform3D; >name : string >Transform3D : Transform3D } interface Transform3D { >Transform3D : Transform3D cachedCss: string; >cachedCss : string } var style: IBookStyle = { >style : IBookStyle >IBookStyle : IBookStyle >{ initialLeftPageTransforms: (width: number) => { return [ {'ry': null } ]; }} : { initialLeftPageTransforms: (width: number) => { [x: string]: any; 'ry': any; }[]; } initialLeftPageTransforms: (width: number) => { >initialLeftPageTransforms : (width: number) => { [x: string]: any; 'ry': any; }[] >(width: number) => { return [ {'ry': null } ]; } : (width: number) => { [x: string]: any; 'ry': any; }[] >width : number return [ >[ {'ry': null } ] : { [x: string]: null; 'ry': null; }[] {'ry': null } >{'ry': null } : { [x: string]: null; 'ry': null; } >null : null ]; } }