import { LitElement } from "lit"; import type { PropertyValues } from "lit"; export type SkyImageLoading = "lazy" | "eager"; export type SkyImageDecoding = "async" | "sync" | "auto"; /** * @element sky-image * * @summary Responsive image component with style controls, `srcset`, and optional auto `sizes`. * * @status stable * @since 1.0.0 * * @documentation https://sky-ui.com/components/image * * @slot - No slots are exposed; image content is rendered internally. * @property {string} src - Primary image source URL. * @property {string} alt - Alternative text for accessibility. * @property {string} width - CSS width for the rendered image. * @property {string} height - CSS height for the rendered image. * @property {string | null} aspectRatio - CSS `aspect-ratio` value. * @property {string} borderRadius - CSS border radius. * @property {string} boxShadow - CSS box shadow. * @property {string} objectFit - CSS object-fit value. * @property {string} objectPosition - CSS object-position value. * @property {string} srcset - Responsive source set string. * @property {string} sizes - Responsive sizes string. * @property {boolean} autoSizes - Computes `sizes` from host width when true. * @property {SkyImageLoading} loading - Native loading hint. * @property {SkyImageDecoding} decoding - Native decoding hint. * @property {string} preset - Named prop preset from nearest `sky-config-provider`. Default: `""`. * * @csspart img - The underlying `` element. * * @Behavior * - Renders a fallback visual placeholder when `src` is empty * - Supports automatic `sizes` updates using ResizeObserver * - Forwards native image loading and decoding hints * * @example * ```html * * ``` * ```vue * * ``` * ```jsx * export default function Demo() { * return ( * * ); * } * ``` */ export declare class SkyImage extends LitElement { src: string; alt: string; width: string; height: string; aspectRatio: string | null; borderRadius: string; boxShadow: string; objectFit: string; objectPosition: string; srcset: string; sizes: string; autoSizes: boolean; private _computedSizes; loading: SkyImageLoading; decoding: SkyImageDecoding; /** Named prop preset from nearest `sky-config-provider`. */ preset: string; private _presets; static styles: import("lit").CSSResult; private _ro?; private _sizesRafId; private _updateSizes; connectedCallback(): void; firstUpdated(): void; private _ensureAutoSizesObserver; updated(changed: PropertyValues): void; disconnectedCallback(): void; /** Browsers keep the resolved resource when only srcset/sizes attrs change on a live . */ private _shouldResyncImageSource; private _resolvedSizesAttr; /** `src` used on — must stay in sync with `srcset` when the set changes. */ private _displaySrc; private _applyImgAttrs; private _resyncImageSource; render(): import("lit-html").TemplateResult<1>; }