@brizy/media-gallery
Version:
48 lines (47 loc) • 1.67 kB
TypeScript
import { GetItems as MediaLibraryGetItems, RemoveItems, UpdateItem, UploadItem } from "~/pages/mediaLibrary/types/Api";
import { DownloadItem, GetItems as StockPhotosGetItems } from "~/pages/stockPhotos/types/Api";
import { OnInsertFile, OnInsertFiles } from "~/pages/types/Api";
import { Locale } from "~/types/Locale";
export declare enum InsertFilesTypes {
NONE = "none",
SINGLE = "single",
MULTIPLE = "multiple"
}
export interface BaseContext {
__type: "context";
origin: string;
height: string | undefined;
development: boolean;
locale: Locale;
acceptableTypes: string[];
mediaLibrary: {
getItems: MediaLibraryGetItems;
uploadItem: UploadItem;
removeItems: RemoveItems;
updateItem: UpdateItem;
};
stockPhotos: {
getItems: StockPhotosGetItems;
downloadItem: DownloadItem;
};
onClose: VoidFunction;
}
export interface NoneContext extends BaseContext {
insertFilesType: InsertFilesTypes.NONE;
}
export declare const isNoneContext: (v: Context) => v is NoneContext;
export interface SingleItemContext extends BaseContext {
insertFilesType: InsertFilesTypes.SINGLE;
onInsertFiles: OnInsertFile;
}
export declare const isSingleItemContext: (v: Context) => v is SingleItemContext;
export interface MultipleItemContext extends BaseContext {
insertFilesType: InsertFilesTypes.MULTIPLE;
onInsertFiles: OnInsertFiles;
}
export declare const isMultipleItemContext: (v: Context) => v is MultipleItemContext;
export type Context = NoneContext | SingleItemContext | MultipleItemContext;
export interface Error {
__type: "error";
message: string;
}