/**
 * Agravity OpenAPI Documentation - Public Functions
 *
 * Contact: office@agravity.io
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { CollTypeItem } from './collTypeItem.pub.agravity';
import { AssetBlob } from './assetBlob.pub.agravity';
import { ArtificialIntelligenceGroup } from './artificialIntelligenceGroup.pub.agravity';

export interface Asset {
	id?: string | null;
	entity_type?: string | null;
	name?: string | null;
	asset_type?: string | null;
	duplicates?: Array<string> | null;
	ai_groups?: Array<ArtificialIntelligenceGroup> | null;
	keywords?: Array<string> | null;
	orig_blob?: AssetBlob;
	blobs?: Array<AssetBlob> | null;
	collections?: Array<string> | null;
	failed_reason?: string | null;
	region_of_origin?: string | null;
	availability?: string | null;
	available_from?: string | null;
	available_to?: string | null;
	custom?: any | null;
	items?: Array<CollTypeItem> | null;
	translations?: { [key: string]: { [key: string]: object } } | null;
	role?: Asset.RoleEnum;
	description?: string | null;
	add_properties?: { [key: string]: any } | null;
	status?: string | null;
	created_date?: string | null;
	created_by?: string | null;
	modified_date?: string | null;
	modified_by?: string | null;
	pk?: string | null;
	_etag?: string | null;
}
export namespace Asset {
	export type RoleEnum = 'NONE' | 'VIEWER' | 'EDITOR';
	export const RoleEnum = {
		None: 'NONE' as RoleEnum,
		Viewer: 'VIEWER' as RoleEnum,
		Editor: 'EDITOR' as RoleEnum
	};
}
