import { AssetTag } from "./tag.js";

//#region src/types/api/asset/asset.d.ts
/** Asset types. */
declare const AssetType: {
  readonly All: "all";
  readonly Audio: "audio";
  readonly Document: "document";
  readonly Image: "image";
  readonly Video: "video";
};
/**
 * An object representing an asset returned by the Asset API.
 *
 * @see Prismic Asset API technical reference: {@link https://prismic.io/docs/asset-api-technical-reference}
 */
type Asset = {
  /** Asset ID. */id: string; /** Asset URL. */
  url: string; /** Asset creation date. */
  created_at: number; /** Asset last modification date. */
  last_modified: number; /** Asset filename. */
  filename: string; /** Asset extension. */
  extension: string; /** Asset size in bytes. */
  size: number; /** Asset kind. */
  kind: Exclude<(typeof AssetType)[keyof typeof AssetType], (typeof AssetType)["All"]>; /** Asset width in pixels. */
  width?: number; /** Asset height in pixels. */
  height?: number; /** Asset notes. */
  notes?: string; /** Asset credits. */
  credits?: string; /** Asset alt text. */
  alt?: string; /** Asset tags. */
  tags?: AssetTag[]; /** @internal */
  origin_url?: string; /** @internal */
  uploader_id?: string; /** @internal */
  search_highlight?: {
    filename?: string[];
    notes?: string[];
    credits?: string[];
    alt?: string[];
  };
};
//#endregion
export { Asset };
//# sourceMappingURL=asset.d.ts.map