You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
3.7 KiB
132 lines
3.7 KiB
/**
|
|
* Enum representing the major IIIF Image API versions
|
|
*/
|
|
export type Versions = string;
|
|
export namespace Versions {
|
|
const VERSION1: string;
|
|
const VERSION2: string;
|
|
const VERSION3: string;
|
|
}
|
|
export default IIIFInfo;
|
|
export type PreferredOptions = {
|
|
/**
|
|
* Preferred image format. Will be used if the image information
|
|
* indicates support for that format.
|
|
*/
|
|
format?: string | undefined;
|
|
/**
|
|
* IIIF image qualitiy. Will be used if the image information
|
|
* indicates support for that quality.
|
|
*/
|
|
quality?: string | undefined;
|
|
};
|
|
export type SupportedFeatures = {
|
|
/**
|
|
* Supported IIIF image size and region
|
|
* calculation features.
|
|
*/
|
|
supports?: string[] | undefined;
|
|
/**
|
|
* Supported image formats.
|
|
*/
|
|
formats?: string[] | undefined;
|
|
/**
|
|
* Supported IIIF image qualities.
|
|
*/
|
|
qualities?: string[] | undefined;
|
|
};
|
|
export type TileInfo = {
|
|
/**
|
|
* Supported resolution scaling factors.
|
|
*/
|
|
scaleFactors: Array<number>;
|
|
/**
|
|
* Tile width in pixels.
|
|
*/
|
|
width: number;
|
|
/**
|
|
* Tile height in pixels. Same as tile width if height is
|
|
* not given.
|
|
*/
|
|
height?: number | undefined;
|
|
};
|
|
export type IiifProfile = {
|
|
/**
|
|
* Supported image formats for the image service.
|
|
*/
|
|
formats?: string[] | undefined;
|
|
/**
|
|
* Supported IIIF image qualities.
|
|
*/
|
|
qualities?: string[] | undefined;
|
|
/**
|
|
* Supported features.
|
|
*/
|
|
supports?: string[] | undefined;
|
|
/**
|
|
* Maximum area (pixels) available for this image service.
|
|
*/
|
|
maxArea?: number | undefined;
|
|
/**
|
|
* Maximum height.
|
|
*/
|
|
maxHeight?: number | undefined;
|
|
/**
|
|
* Maximum width.
|
|
*/
|
|
maxWidth?: number | undefined;
|
|
};
|
|
export type ImageInformationResponse = {
|
|
[x: string]: string | number | Array<number | string | IiifProfile | {
|
|
[x: string]: number;
|
|
} | TileInfo>;
|
|
};
|
|
/**
|
|
* @classdesc
|
|
* Format for transforming IIIF Image API image information responses into
|
|
* IIIF tile source ready options
|
|
*
|
|
* @api
|
|
*/
|
|
declare class IIIFInfo {
|
|
/**
|
|
* @param {string|ImageInformationResponse} imageInfo
|
|
* Deserialized image information JSON response object or JSON response as string
|
|
*/
|
|
constructor(imageInfo: string | ImageInformationResponse);
|
|
/**
|
|
* @param {string|ImageInformationResponse} imageInfo
|
|
* Deserialized image information JSON response object or JSON response as string
|
|
* @api
|
|
*/
|
|
setImageInfo(imageInfo: string | ImageInformationResponse): void;
|
|
imageInfo: any;
|
|
/**
|
|
* @return {Versions} Major IIIF version.
|
|
* @api
|
|
*/
|
|
getImageApiVersion(): Versions;
|
|
/**
|
|
* @param {Versions} version Optional IIIF image API version
|
|
* @return {string} Compliance level as it appears in the IIIF image information
|
|
* response.
|
|
*/
|
|
getComplianceLevelEntryFromProfile(version: Versions): string;
|
|
/**
|
|
* @param {Versions} version Optional IIIF image API version
|
|
* @return {string} Compliance level, on of 'level0', 'level1' or 'level2' or undefined
|
|
*/
|
|
getComplianceLevelFromProfile(version: Versions): string;
|
|
/**
|
|
* @return {SupportedFeatures} Image formats, qualities and region / size calculation
|
|
* methods that are supported by the IIIF service.
|
|
*/
|
|
getComplianceLevelSupportedFeatures(): SupportedFeatures;
|
|
/**
|
|
* @param {PreferredOptions} [preferredOptions] Optional options for preferred format and quality.
|
|
* @return {import("../source/IIIF.js").Options} IIIF tile source ready constructor options.
|
|
* @api
|
|
*/
|
|
getTileSourceOptions(preferredOptions?: PreferredOptions | undefined): import("../source/IIIF.js").Options;
|
|
}
|
|
//# sourceMappingURL=IIIFInfo.d.ts.map
|