import { IBookingExtraFields, IGiftCardPreauthorisationDTO } from '@roomstay/core';
import BasketRowDifferences from './BasketRowDifferences';
export declare enum EUserProfileFormKey {
    Title = "Title",
    Forename = "Forename",
    Surname = "Surname",
    Email = "Email",
    Phone = "Phone",
    Address = "Address",
    City = "City",
    PostCode = "PostCode",
    State = "State",
    Country = "Country",
    CountryId = "CountryId",
    CountryCode = "CountryCode"
}
export declare enum EUserRequiredInputFormKey {
    AuxInputs = "AuxInputs"
}
export type TUserProfileFormValues = {
    [userProfileKey in EUserProfileFormKey]: string;
} & {
    AuxInputs?: {
        [key: string]: string | number;
    };
} & {
    CaptureChildAge?: string[];
};
export interface ConfirmationFormValues {
    IATANumber?: string;
    userProfiles: TUserProfileFormValues[];
    copyCheckBox?: boolean;
    paymentMethod: string;
    marketingOptIn: boolean;
    privacyPolicy: boolean;
    comments?: string;
    giftCardPreauth?: IGiftCardPreauthorisationDTO;
    giftCardApplied?: boolean;
    giftCardAmount?: number;
    eta?: string;
    customFields?: IBookingExtraFields['customFields'];
}
export interface IBookValidationResult {
    differences: BasketRowDifferences[];
    warnings: string[];
}
