import dayjs from 'dayjs';
export declare function useDate(d?: dayjs.ConfigType, timeout?: number): import("@vue/composition-api").Ref<{
    clone: () => dayjs.Dayjs;
    isValid: () => boolean;
    year: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    month: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    date: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    day: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    hour: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    minute: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    second: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    millisecond: {
        (): number;
        (value: number): dayjs.Dayjs;
    };
    set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs;
    get: (unit: dayjs.UnitType) => number;
    add: (value: number, unit: dayjs.OpUnitType) => dayjs.Dayjs;
    subtract: (value: number, unit: dayjs.OpUnitType) => dayjs.Dayjs;
    startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
    endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
    format: (template?: string | undefined) => string;
    diff: (date: dayjs.ConfigType, unit?: "s" | "day" | "hour" | "minute" | "month" | "second" | "year" | "d" | "M" | "y" | "h" | "m" | "ms" | "millisecond" | "date" | "week" | "w" | "quarter" | "Q" | undefined, float?: boolean | undefined) => number;
    valueOf: () => number;
    unix: () => number;
    daysInMonth: () => number;
    toDate: () => Date;
    toJSON: () => string;
    toISOString: () => string;
    toString: () => string;
    utcOffset: () => number;
    isBefore: (date: dayjs.ConfigType, unit?: "s" | "day" | "hour" | "minute" | "month" | "second" | "year" | "d" | "M" | "y" | "h" | "m" | "ms" | "millisecond" | "date" | "week" | "w" | undefined) => boolean;
    isSame: (date: dayjs.ConfigType, unit?: "s" | "day" | "hour" | "minute" | "month" | "second" | "year" | "d" | "M" | "y" | "h" | "m" | "ms" | "millisecond" | "date" | "week" | "w" | undefined) => boolean;
    isAfter: (date: dayjs.ConfigType, unit?: "s" | "day" | "hour" | "minute" | "month" | "second" | "year" | "d" | "M" | "y" | "h" | "m" | "ms" | "millisecond" | "date" | "week" | "w" | undefined) => boolean;
    locale: {
        (): string;
        (preset: string | ILocale, object?: Partial<ILocale> | undefined): dayjs.Dayjs;
    };
    fromNow: (withoutSuffix?: boolean | undefined) => string;
    from: (compared: dayjs.ConfigType, withoutSuffix?: boolean | undefined) => string;
    toNow: (withoutSuffix?: boolean | undefined) => string;
    to: (compared: dayjs.ConfigType, withoutSuffix?: boolean | undefined) => string;
}>;
export { dayjs };
