import type { MaybeRefOrGetter, PropType } from 'vue'; export interface ChunksProps { chunkCount: number | string | null; chunkWidth: number | string | null; chunkGap: number | string; variant: 'split' | undefined; } export declare const makeChunksProps: (defaults?: Defaults | undefined) => { chunkCount: unknown extends Defaults["chunkCount"] ? { type: (NumberConstructor | StringConstructor)[]; default: null; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: null; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["chunkCount"] ? string | number : Defaults["chunkCount"] | NonNullable; }; chunkWidth: unknown extends Defaults["chunkWidth"] ? { type: (NumberConstructor | StringConstructor)[]; default: null; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: null; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["chunkWidth"] ? string | number : Defaults["chunkWidth"] | NonNullable; }; chunkGap: unknown extends Defaults["chunkGap"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["chunkGap"] ? string | number : Defaults["chunkGap"] | NonNullable; }; variant: unknown extends Defaults["variant"] ? { type: PropType<'split'>; default: undefined; validator: (v: string) => boolean; } : Omit<{ type: PropType<'split'>; default: undefined; validator: (v: string) => boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["variant"] ? "split" : "split" | Defaults["variant"]; }; }; export declare function useChunks(props: ChunksProps, containerWidth: MaybeRefOrGetter, value: MaybeRefOrGetter, bufferValue: MaybeRefOrGetter, reversed: MaybeRefOrGetter): { hasChunks: Readonly>; isSplit: Readonly>; chunkCount: Readonly>; chunksMaskStyles: import("vue").ComputedRef<{ maskRepeat?: undefined; maskImage?: undefined; maskSize?: undefined; } | { maskRepeat: string; maskImage: string; maskSize: string; }>; splitStyles: import("vue").ComputedRef<{ bar: { width: string; }; buffer: { [x: string]: string; width: string; } | undefined; background: { [x: string]: string; width: string; }; } | undefined>; snapValueToChunk: (val: number) => number; };