/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import { Schema } from '@formily/json-schema';
interface Props {
    operator?: {
        value: string;
    };
    schema?: any;
    /**
     * 不需要禁用选项，一般会在表达式中使用
     */
    noDisabled?: boolean;
    /** 消费变量值的字段 */
    targetFieldSchema?: Schema;
    dateOnly?: boolean;
    utc?: boolean;
}
/**
 * 变量：`日期变量`的上下文
 * @returns
 */
export declare const useExactDateVariableContext: () => {
    exactDateTimeCtx: {
        nowUtc: () => string;
        nowLocal: () => string;
        todayUtc: () => string;
        todayLocal: () => string;
        todayDate: () => string;
        yesterdayUtc: () => string;
        yesterdayLocal: () => string;
        yesterdayDate: () => string;
        tomorrowUtc: () => string;
        tomorrowLocal: () => string;
        tomorrowDate: () => string;
    };
};
/**
 * 变量：`日期时刻变量`，主要用于赋值的场景
 * @param param0
 * @returns
 */
export declare const useExactDateVariable: ({ schema, targetFieldSchema }?: Props) => {
    exactDateTimeSettings: {
        label: string;
        value: string;
        key: string;
        children: {
            key: string;
            value: string;
            label: string;
            operators: ({
                label: string;
                value: string;
                selected: boolean;
                schema: {
                    'x-component': string;
                    'x-component-props': {
                        isRange: boolean;
                    };
                };
                onlyFilterAction: boolean;
                noValue?: undefined;
            } | {
                label: string;
                value: string;
                schema: {
                    'x-component': string;
                    'x-component-props': {
                        isRange: boolean;
                    };
                };
                onlyFilterAction: boolean;
                selected?: undefined;
                noValue?: undefined;
            } | {
                label: string;
                value: string;
                schema: {
                    'x-component': string;
                    'x-component-props': {
                        isRange: boolean;
                    };
                };
                selected?: undefined;
                onlyFilterAction?: undefined;
                noValue?: undefined;
            } | {
                label: string;
                value: string;
                noValue: boolean;
                selected?: undefined;
                schema?: undefined;
                onlyFilterAction?: undefined;
            })[];
        }[];
    };
    exactDateTimeCtx: {
        nowUtc: () => string;
        nowLocal: () => string;
        todayUtc: () => string;
        todayLocal: () => string;
        todayDate: () => string;
        yesterdayUtc: () => string;
        yesterdayLocal: () => string;
        yesterdayDate: () => string;
        tomorrowUtc: () => string;
        tomorrowLocal: () => string;
        tomorrowDate: () => string;
    };
    shouldDisplayExactDate: boolean;
};
export {};
