diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..ef6f5cb --- /dev/null +++ b/index.d.ts @@ -0,0 +1,39 @@ +declare module 'react-cloudimage-responsive' { + + type Params = string | Record; + + export interface CloudimageProviderConfig { + token: string; + baseURL?: string; + doNotReplaceURL?: boolean; + lazyLoading?: boolean; + lazyLoadOffset?: number; + params?: Params; + placeholderBackground?: string; + lowQualityPreview?: { + minImgWidth: number; + } + presets?: Record; + limitFactor?: number; + devicePixelRatioList?: number[]; + delay?: number; + } + + class CloudimageProvider extends React.Component<{ config: CloudimageProviderConfig }> { } + + interface ImgProps { + src: string; + width?: string; + height?: string; + params?: Params; + sizes?: Record; + ratio?: number; + lazyLoading?: boolean; + lazyLoadConfig?: Record; + } + + class BackgroundImg extends React.Component> { } + + export default class Img extends React.Component> { } + +} diff --git a/package.json b/package.json index 2ac70c1..6df7f96 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "crop", "resize" ], + "types": "./index.d.ts", "scripts": { "start-demo": "webpack-dev-server --mode development --config webpack-demo.config.js", "dist": "rm -rf dist && babel src -d dist --copy-files",