import { AddressDTO } from '@sentecacommerce/sdk';
import { ShippingModule } from '../../../hooks/useCheckoutShippingModule';
import { CheckoutFormErrorLabelsType, CheckoutFormErrorsResultType } from '../index';
declare type ValidationProps = {
    data?: AddressDTO | null;
    mod?: ShippingModule | null;
    errorLabels: CheckoutFormErrorLabelsType;
};
export declare function genericAddressValidation({ data, mod, errorLabels, }: ValidationProps): CheckoutFormErrorsResultType;
export declare function fanAddressValidation({ data, mod, errorLabels, }: ValidationProps): CheckoutFormErrorsResultType;
export declare function genericOfficeValidation({ mod, errorLabels, }: ValidationProps): CheckoutFormErrorsResultType;
export declare function pickupFromStoreValidation({ mod, errorLabels, }: ValidationProps): CheckoutFormErrorsResultType;
export declare const defaultShippingValidations: ShippingValidationsType;
export interface ShippingValidationsType {
    [key: string]: {
        [key: string]: (data: ValidationProps) => {
            [key: string]: string;
        } | null | undefined;
    };
}
export declare function validateShipping(data: AddressDTO | null | undefined, mod: ShippingModule | undefined, errorLabels: CheckoutFormErrorLabelsType, validations: ShippingValidationsType): CheckoutFormErrorsResultType;
export {};
