import { SharedContracts } from './shared-contracts'; export declare namespace AssetContracts { interface IAssetModelContract { id: string; file_name: string; title: string; image_width: number | null; image_height: number | null; size: number; type: string; file_reference: IAssetFileReferenceContract; descriptions: IAssetFileDescriptionContract[]; external_id: string; last_modified: string; url: string; codename: string; collection?: IAssetCollectionReferenceContract; folder?: IAssetFolderReferenceContract; elements?: IAssetElement[]; } interface IAssetElement { element: SharedContracts.IIdReferenceContract; value: SharedContracts.IIdReferenceContract[]; } interface IAssetFileReferenceContract { id: string; type: 'internal'; } interface IAssetFolderReferenceContract { id?: string; external_id?: string; } interface IAssetFileDescriptionContract { language: SharedContracts.IReferenceObjectContract; description: string; } interface IAssetCollectionReferenceContract { reference: SharedContracts.IReferenceObjectContract | null; } interface IAssetsListingResponseContract { assets: IAssetModelContract[]; pagination: SharedContracts.IPaginationModelContract; } interface IUploadBinaryFileResponseContract extends IAssetFileReferenceContract { } interface IAddAssetResponseContract extends IAssetModelContract { } interface IUpdateAssetResponseContract extends IAssetModelContract { } interface IUpsertAssetResponseContract extends IAssetModelContract { } interface IDeleteAssetResponseContract { } }