Refactor typings.
This commit is contained in:
parent
ab12d8de4f
commit
ac667495d2
|
@ -1,25 +1,24 @@
|
|||
import * as React from 'react';
|
||||
import { ObjectOverwrite } from 'typelevel-ts';
|
||||
import { ImageProperties, ImageStatic } from 'react-native';
|
||||
import * as React from 'react'
|
||||
import { FlexStyle, LayoutChangeEvent, ShadowStyleIOS, StyleProp, TransformsStyle } from 'react-native'
|
||||
|
||||
declare namespace FastImage {
|
||||
|
||||
export namespace priority {
|
||||
type low = 'low';
|
||||
type normal = 'normal';
|
||||
type high = 'high';
|
||||
type low = 'low'
|
||||
type normal = 'normal'
|
||||
type high = 'high'
|
||||
}
|
||||
|
||||
type priority =
|
||||
FastImage.priority.low |
|
||||
FastImage.priority.normal |
|
||||
FastImage.priority.high;
|
||||
FastImage.priority.high
|
||||
|
||||
export namespace resizeMode {
|
||||
type contain = 'contain';
|
||||
type cover = 'cover';
|
||||
type stretch = 'stretch';
|
||||
type center = 'center';
|
||||
type contain = 'contain'
|
||||
type cover = 'cover'
|
||||
type stretch = 'stretch'
|
||||
type center = 'center'
|
||||
}
|
||||
|
||||
export type resizeMode =
|
||||
|
@ -31,26 +30,62 @@ declare namespace FastImage {
|
|||
|
||||
export type FastImageSource = {
|
||||
uri?: string,
|
||||
headers?: object;
|
||||
priority?: FastImage.priority;
|
||||
};
|
||||
|
||||
export type FastImageProperties = ObjectOverwrite<ImageProperties, {
|
||||
source: FastImageSource | number,
|
||||
resizeMode?: FastImage.resizeMode;
|
||||
onLoadStart?(): void;
|
||||
onprogress?(event: any): void;
|
||||
onLoad?(): void;
|
||||
onError?(): void;
|
||||
onLoadEnd?(): void;
|
||||
}>;
|
||||
|
||||
interface FastImageStatic extends React.ComponentClass<FastImageProperties> {
|
||||
resizeMode: FastImage.resizeMode;
|
||||
preload(sources: Array<FastImageProperties['source']>): void;
|
||||
headers?: object
|
||||
priority?: FastImage.priority
|
||||
}
|
||||
|
||||
declare var FastImage: FastImageStatic;
|
||||
type FastImage = FastImageStatic;
|
||||
export interface ImageStyle extends FlexStyle, TransformsStyle, ShadowStyleIOS {
|
||||
backfaceVisibility?: 'visible' | 'hidden'
|
||||
backgroundColor?: string
|
||||
borderColor?: string
|
||||
overlayColor?: string
|
||||
tintColor?: string
|
||||
opacity?: number
|
||||
}
|
||||
|
||||
export default FastImage;
|
||||
export interface FastImageProperties {
|
||||
source: FastImageSource | number
|
||||
resizeMode?: FastImage.resizeMode
|
||||
|
||||
onLoadStart?(): void
|
||||
|
||||
onProgress?(event: any): void
|
||||
|
||||
onLoad?(): void
|
||||
|
||||
onError?(): void
|
||||
|
||||
onLoadEnd?(): void
|
||||
|
||||
/**
|
||||
* onLayout function
|
||||
*
|
||||
* Invoked on mount and layout changes with
|
||||
*
|
||||
* {nativeEvent: { layout: {x, y, width, height}}}.
|
||||
*/
|
||||
onLayout?: (event: LayoutChangeEvent) => void;
|
||||
|
||||
/**
|
||||
*
|
||||
* Style
|
||||
*/
|
||||
style?: StyleProp<ImageStyle>;
|
||||
|
||||
/**
|
||||
* A unique identifier for this element to be used in UI Automation testing scripts.
|
||||
*/
|
||||
testID?: string;
|
||||
}
|
||||
|
||||
interface FastImageStatic extends React.ComponentClass<FastImageProperties> {
|
||||
resizeMode: FastImage.resizeMode
|
||||
priority: FastImage.priority
|
||||
|
||||
preload(sources: FastImageSource[]): void
|
||||
}
|
||||
|
||||
declare var FastImage: FastImageStatic
|
||||
type FastImage = FastImageStatic
|
||||
|
||||
export default FastImage
|
||||
|
|
Loading…
Reference in New Issue