// Signature format: 4.0 package me.saket.telephoto.zoomable { @androidx.compose.runtime.Immutable @dev.drewhamilton.poko.Poko public final class ZoomSpec { ctor public ZoomSpec(optional float maxZoomFactor, optional boolean preventOverOrUnderZoom); method public float getMaxZoomFactor(); method public boolean getPreventOverOrUnderZoom(); property public final float maxZoomFactor; property public final boolean preventOverOrUnderZoom; } public interface ZoomableContentLocation { method public androidx.compose.ui.geometry.Rect location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction); method public long size(long layoutSize); field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.Companion Companion; } public static final class ZoomableContentLocation.Companion { method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation scaledInsideAndCenterAligned(androidx.compose.ui.geometry.Size? size); method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation scaledToFitAndCenterAligned(androidx.compose.ui.geometry.Size? size); method @androidx.compose.runtime.Stable public me.saket.telephoto.zoomable.ZoomableContentLocation unscaledAndTopLeftAligned(androidx.compose.ui.geometry.Size? size); method @Deprecated public me.saket.telephoto.zoomable.ZoomableContentLocation unscaledAndTopStartAligned(androidx.compose.ui.geometry.Size? size); } public static final class ZoomableContentLocation.SameAsLayoutBounds implements me.saket.telephoto.zoomable.ZoomableContentLocation { method public androidx.compose.ui.geometry.Rect location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction); method public long size(long layoutSize); field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.SameAsLayoutBounds INSTANCE; } public static final class ZoomableContentLocation.Unspecified implements me.saket.telephoto.zoomable.ZoomableContentLocation { method public Void location(long layoutSize, androidx.compose.ui.unit.LayoutDirection direction); method public long size(long layoutSize); field public static final me.saket.telephoto.zoomable.ZoomableContentLocation.Unspecified INSTANCE; } @androidx.compose.runtime.Immutable public interface ZoomableContentTransformation { method public androidx.compose.ui.geometry.Offset? getCentroid(); method public long getContentSize(); method public long getOffset(); method public float getRotationZ(); method public long getScale(); method public me.saket.telephoto.zoomable.ZoomableContentTransformation.ScaleMetadata getScaleMetadata(); method public default long getTransformOrigin(); method public boolean isSpecified(); method public default boolean isUnspecified(); property public abstract androidx.compose.ui.geometry.Offset? centroid; property public abstract long contentSize; property public abstract boolean isSpecified; property public default boolean isUnspecified; property public abstract long offset; property public abstract float rotationZ; property public abstract long scale; property public abstract me.saket.telephoto.zoomable.ZoomableContentTransformation.ScaleMetadata scaleMetadata; property public default long transformOrigin; } public static interface ZoomableContentTransformation.ScaleMetadata { method public long getInitialScale(); method public float getUserZoom(); property public abstract long initialScale; property public abstract float userZoom; } public final class ZoomableKt { method public static androidx.compose.ui.Modifier zoomable(androidx.compose.ui.Modifier, me.saket.telephoto.zoomable.ZoomableState state, optional boolean enabled, optional kotlin.jvm.functions.Function1? onClick, optional kotlin.jvm.functions.Function1? onLongClick, optional boolean clipToBounds); } @androidx.compose.runtime.Stable public sealed interface ZoomableState { method public boolean getAutoApplyTransformations(); method public androidx.compose.ui.Alignment getContentAlignment(); method public androidx.compose.ui.layout.ContentScale getContentScale(); method public me.saket.telephoto.zoomable.ZoomableContentTransformation getContentTransformation(); method public androidx.compose.ui.geometry.Rect getTransformedContentBounds(); method @FloatRange(from=0.0, to=1.0) public Float? getZoomFraction(); method public suspend Object? resetZoom(optional boolean withAnimation, optional kotlin.coroutines.Continuation); method public void setAutoApplyTransformations(boolean); method public void setContentAlignment(androidx.compose.ui.Alignment); method public suspend Object? setContentLocation(me.saket.telephoto.zoomable.ZoomableContentLocation location, kotlin.coroutines.Continuation); method public void setContentScale(androidx.compose.ui.layout.ContentScale); property public abstract boolean autoApplyTransformations; property public abstract androidx.compose.ui.Alignment contentAlignment; property public abstract androidx.compose.ui.layout.ContentScale contentScale; property public abstract me.saket.telephoto.zoomable.ZoomableContentTransformation contentTransformation; property public abstract androidx.compose.ui.geometry.Rect transformedContentBounds; property @FloatRange(from=0.0, to=1.0) public abstract Float? zoomFraction; } public final class ZoomableStateKt { method @androidx.compose.runtime.Composable public static me.saket.telephoto.zoomable.ZoomableState rememberZoomableState(optional me.saket.telephoto.zoomable.ZoomSpec zoomSpec, optional boolean autoApplyTransformations); } }