export type ContentsJsonImageIdiom = "tv"; export type ContentsJsonImageAppearance = { appearance: "luminosity"; value: "dark"; }; export type ContentsJsonImageScale = "1x" | "2x" | "3x"; export type ContentsJsonImageRole = "primary-app-icon" | "top-shelf-image" | "top-shelf-image-wide"; export interface ContentsJsonImage { appearances?: ContentsJsonImageAppearance[]; idiom: ContentsJsonImageIdiom; size?: string; scale?: ContentsJsonImageScale; filename: string; } export interface ContentsJsonImageLayer { filename: string; } export interface ContentsJsonAsset { filename?: string; idiom?: ContentsJsonImageIdiom; role?: ContentsJsonImageRole; size?: string; } export interface ContentsJson { assets?: ContentsJsonAsset[]; images?: ContentsJsonImage[]; layers?: ContentsJsonImageLayer[]; info: { version: number; author: string; }; } export interface SourceImageJson { path: string; scale?: string; } export interface SourceImageSetJson { name: string; sourceImages: SourceImageJson[]; } export interface SourceImageLayerJson { name: string; sourceImages: SourceImageJson[]; } export interface SourceImageStackJson { name: string; sourceLayers: SourceImageLayerJson[]; } export interface SourceBrandAssetJson { role: ContentsJsonImageRole; size: string; imageStack?: SourceImageStackJson; imageSet?: SourceImageSetJson; } export interface SourceBrandAssetsJson { name: string; assets: SourceBrandAssetJson[]; } /** * Writes the Config.json which is used to assign images to their respective platform, dpi, and idiom. * * @param directory path to add the Contents.json to. * @param contents image json data */ export declare function writeContentsJsonAsync(directory: string, options: { assets?: ContentsJsonAsset[]; images?: ContentsJsonImage[]; layers?: ContentsJsonImageLayer[]; }): Promise; /** * Creates an image set directory with its Contents.json and any images */ export declare function createImageSetAsync(destinationPath: string, imageSet: SourceImageSetJson): Promise; /** * Creates an image stack layer directory with its Contents.json and any images */ export declare function createImageStackLayerAsync(destinationPath: string, layer: SourceImageLayerJson): Promise; /** * Creates an image stack directory with its Contents.json and any layers */ export declare function createImageStackAsync(destinationPath: string, stack: SourceImageStackJson): Promise; /** * Creates a brand assets directory with its Contents.json and any assets */ export declare function createBrandAssetsAsync(destinationPath: string, brandAssets: SourceBrandAssetsJson): Promise;