text: /**
   * Copyright (c) Facebook, Inc. and its affiliates.
   *
   * This source code is licensed under the MIT license found in the
   * LICENSE file in the root directory of this source tree.
   *
   * @flow
   * @format
   */
  
  'use strict';
  
  import type {TurboModule} from '../TurboModule/RCTExport';
  import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
  
  export interface Spec extends TurboModule {
    +getConstants: () => {||};
    // Return [width, height] of image uri
    +getSize: (uri: string) => Promise<$ReadOnlyArray<number>>;
    +getSizeWithHeaders: (
      uri: string,
      headers: {[string]: string},
    ) => Promise<$ReadOnly<{width: number, height: number}>>;
    +prefetchImage: (uri: string) => Promise<boolean>;
    +queryCache: (
      uris: Array<string>,
    ) => Promise<{[string]: 'memory' | 'disk' | 'disk/memory'}>;
  }
  
  export default (TurboModuleRegistry.getEnforcing<Spec>('ImageLoader'): Spec);
  