import type { Property } from './Property'; import { type AllowedValueType } from './valueType'; /** Represents an error which occurs while validating a calendar property. */ export declare class PropertyValidationError extends Error { constructor(message: string); } /** Represents an error which occurs if a required property is missing. */ export declare class MissingPropertyError extends Error { constructor(message: string); } /** * Validate if a property value is a valid binary string. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateBinary(value: string): void; /** * Validate if a property value is a valid boolean. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateBoolean(value: string): void; /** * Validate if a property value is a valid calendar user address. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateCalendarUserAddress(value: string): void; /** * Validate if a property value is a valid date. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateDate(value: string): void; /** * Validate if a property value is a valid date-time. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateDateTime(value: string): void; /** * Validate if a property value is a valid duration. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateDuration(value: string): void; /** * Validate if a property value is a valid float. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateFloat(value: string): void; /** * Validate if a property value is a valid integer. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateInteger(value: string): void; /** * Validate if a property value is a valid period. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validatePeriod(value: string): void; /** * Validate if a property value is a valid recurrence rule. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateRecurrenceRule(value: string): void; /** * Validate if a property value is valid text. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateText(value: string): void; /** * Validate if a property value is a valid time. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateTime(value: string): void; /** * Validate if a property value is a valid URI. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateUri(value: string): void; /** * Validate if a property value is a valid UTC offset. * @param value The unescaped property value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateUtcOffset(value: string): void; /** * Validate a property value for a set value type. * @param value The unescaped property value to validate. * @param type The property value type which `value` will be validated against. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateValue(value: string, type: AllowedValueType): void; /** * Validate if a value is a valid content type. * @param value The value to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateContentType(value: string): void; /** * Validate the value of a property based on it's value type. * * The validation will fail if the property: * * - has a value which is not valid for its value type. * - has a value type which is not valid for that property. * - has no known value type and is invalid TEXT. (see below) * * Unknown properties are validated as TEXT by if no value type is set, as * defined by {@link https://datatracker.ietf.org/doc/html/rfc5545#section-3.8.8|RFC5545#3.8.8.} * @param property The property to validate. * @throws {PropertyValidationError} If the validation fails. */ export declare function validateProperty(property: Property): void; //# sourceMappingURL=validate.d.ts.map