/** * Copyright 2024, SumUp Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { Temporal } from 'temporal-polyfill'; import type { Locale } from '../../../util/i18n.js'; import type { DateSegmentProps } from '../components/DateSegment.js'; export type DateValue = number | ''; type DateValues = { year: DateValue; month: DateValue; day: DateValue; }; type PlainDateState = { date: Temporal.PlainDate | undefined; update: (values: Partial) => void; props: { year: Omit; month: Omit; day: Omit; }; }; export declare function usePlainDateState({ value, defaultValue, onChange, minDate, maxDate, locale, }: { value: string | undefined; defaultValue: string | undefined; onChange: ((date: string) => void) | undefined; minDate: Temporal.PlainDate | undefined; maxDate: Temporal.PlainDate | undefined; locale: Locale | undefined; }): PlainDateState; export {};