import { MaybeComputedElementRef } from "@vueuse/core"; import * as vue from "vue"; import { TemplateRef } from "vue"; //#region src/use-auto-ratio.d.ts /** * 自动计算元素尺寸,保持指定的宽高比 * * @param templateRef 要应用尺寸的元素引用 * @param ratio 目标宽高比(宽度/高度),默认为 1 * @param target 参考尺寸的目标元素,默认为窗口 * @returns 包含元素引用、计算宽度和高度的对象 * * @example * // 保持 16:9 的宽高比,参考容器尺寸 * const container = ref(null) * const targetRef = ref(null) * const { width, height } = useAutoRatio(targetRef, 16/9, container) * * @example * // 保持 4:3 的宽高比,参考窗口尺寸 * const { width, height } = useAutoRatio(elRef, 4/3) */ declare function useAutoRatio(templateRef?: TemplateRef, ratio?: number, target?: MaybeComputedElementRef): { templateRef: Readonly> | undefined; width: vue.ComputedRef; height: vue.ComputedRef; }; /** * useAutoRatio 函数的返回类型 * 包含元素引用、计算宽度和高度 * @example * const ratio: UseAutoRatioReturns = useAutoRatio(elRef, 16/9) */ type UseAutoRatioReturns = ReturnType; //#endregion export { UseAutoRatioReturns, useAutoRatio };