import type { TinySliderInstance, TinySliderSettings } from 'tiny-slider/src/tiny-slider' import type { MaybeRefOrGetter } from 'vue' export function useTinySlider( target: Ref, settings: MaybeRefOrGetter> = {}, ) { const slider = shallowRef(null) onMounted(async () => { if (target.value) { const { tns } = await import('tiny-slider/src/tiny-slider') slider.value = tns({ container: target.value, ...toValue(settings), }) } }) onUnmounted(() => { if (slider.value) { slider.value.destroy() } }) return { slider, } }