@aptly-as/types
Version:
Aptly types and enums
51 lines (50 loc) • 1.45 kB
TypeScript
import { AptlyOrganizationSchema } from './organization.js';
import { AptlyBaseSchema } from './extends.js';
export interface AptlyMediaSchema<ID, DATE> extends AptlyBaseSchema<ID, DATE> {
organization: ID | AptlyOrganizationSchema<ID, DATE>;
src: string;
alt: string;
caption?: string;
title?: string;
mime: string;
tags: string[];
width: number;
height: number;
albums: string[];
public_id: string;
asset_id: string;
version: number;
version_id: string;
signature: string;
format: string;
resource_type: string;
created_at: string;
bytes: number;
type: string;
etag: string;
placeholder: boolean;
url: string;
original_filename: string;
created: DATE;
updated: DATE;
srcUrl?: string;
uploadSignature?: string;
}
export interface AptlyMediaSrcArea {
width: number;
height: number;
x: number;
y: number;
}
export interface AptlyMediaSrcLocation {
x: number;
y: number;
}
export interface AptlyMediaSrcSchema<ID, DATE> extends Pick<AptlyMediaSchema<ID, DATE>, AptlyMediaSrcKeys> {
area?: AptlyMediaSrcArea;
location?: AptlyMediaSrcLocation;
image?: string;
}
export type AptlyMediaSrcKeys = '_id' | 'name' | 'src' | 'url' | 'alt' | 'title' | 'caption' | 'mime' | 'width' | 'height';
export type AptlyMediaSrc = AptlyMediaSrcSchema<string, string>;
export type AptlyMedia = AptlyMediaSchema<string, string>;