instant-photo
Version:
<img src="./images/example-46mm.png" alt="Example screenshot" width="20%"/>
54 lines (53 loc) • 1.61 kB
TypeScript
/// <reference types="react" />
declare module "types" {
import { CSSProperties, ReactNode } from "react";
export type InstantPhotoVariant = "46mm" | "99mm";
export type InstantPhotoSize = "small" | "large";
export type InstantPhotoFilter = "polaroid" | "vintage" | "bloom" | "greyscale" | "none";
export interface InstantPhotoProps {
image?: string;
variant?: InstantPhotoVariant;
size?: InstantPhotoSize;
alt?: string;
rotation?: number;
style?: CSSProperties;
photoStyle?: CSSProperties;
footer?: ReactNode;
filter?: InstantPhotoFilter;
showArtefacts?: boolean;
}
}
declare module "filters" {
import { InstantPhotoFilter } from "types";
export const filters: Record<InstantPhotoFilter, string | undefined>;
}
declare module "sizes" {
import { CSSProperties } from "react";
export const sizeStyles: {
'46mm': {
small: {
photo: CSSProperties;
frame: CSSProperties;
};
large: {
photo: CSSProperties;
frame: CSSProperties;
};
};
'99mm': {
small: {
photo: CSSProperties;
frame: CSSProperties;
};
large: {
photo: CSSProperties;
frame: CSSProperties;
};
};
};
}
declare module "instant-photo" {
import React from "react";
import { InstantPhotoProps } from "types";
export const InstantPhoto: React.FC<InstantPhotoProps>;
}