import { __ } from '@wordpress/i18n'; import { type Field } from './fields'; import type { MembershipPage } from './types'; export const membershipStatuses: [ string, string ][] = [ ['pending', __('Pending', 'abece-booking')], ['active', __('Active', 'abece-booking')], ['inactive', __('Inactive', 'abece-booking')], ['expired', __('Expired', 'abece-booking')], ['cancelled', __('Cancelled', 'abece-booking')], ]; export declare const seasonFields: Field[]; export const memberFields: Field[] = [ { key: 'first_name', label: __('First name', 'abece-booking'), type: 'text', required: true, maxLength: 100 }, { key: 'last_name', label: __('Last name', 'abece-booking'), type: 'text', required: true, maxLength: 100 }, { key: 'member_number', label: __('Member number', 'abece-booking'), type: 'text', nullable: true, maxLength: 100 }, { key: 'email', label: __('Email', 'abece-booking'), type: 'email', nullable: true, maxLength: 190 }, { key: 'phone', label: __('Phone', 'abece-booking'), type: 'tel', nullable: true, maxLength: 50 }, { key: 'date_of_birth', label: __('Date of birth', 'abece-booking'), type: 'date', nullable: true }, { key: 'wp_user_id', label: __('WordPress account', 'abece-booking'), type: 'select', nullable: true, description: __('Select an existing account explicitly. No account is created or linked by email.', 'abece-booking') }, { key: 'is_active', label: __('Active', 'abece-booking'), type: 'checkbox' }, ]; export const membershipFields: Field[] = [ { key: 'season_id', label: __('Season', 'abece-booking'), type: 'select', required: true }, { key: 'membership_type_id', label: __('Membership type', 'abece-booking'), type: 'select', nullable: true }, { key: 'valid_from', label: __('Valid from', 'abece-booking'), type: 'date', nullable: true }, { key: 'valid_to', label: __('Valid to', 'abece-booking'), type: 'date', nullable: true }, { key: 'status', label: __('Status', 'abece-booking'), type: 'select', options: membershipStatuses }, { key: 'membership_fee_amount', label: __('Membership fee', 'abece-booking'), type: 'text', nullable: true, min: 0, description: __('Enter currency units, for example 150.00, and select the actual currency. An empty amount is not recorded.', 'abece-booking') }, { key: 'membership_fee_currency', label: __('Currency', 'abece-booking'), type: 'text', nullable: true, maxLength: 3 }, { key: 'paid_at', label: __('Paid at', 'abece-booking'), type: 'datetime-local', nullable: true }, ]; export declare function fieldsFor(kind: MembershipPage | "memberships"): Field[]; export declare const pageLabels: { seasons: { title: import("@wordpress/i18n").TransformedText<"Seasons">; add: import("@wordpress/i18n").TransformedText<"Add season">; create: import("@wordpress/i18n").TransformedText<"Create season">; edit: import("@wordpress/i18n").TransformedText<"Edit season">; }; members: { title: import("@wordpress/i18n").TransformedText<"Members">; add: import("@wordpress/i18n").TransformedText<"Add member">; create: import("@wordpress/i18n").TransformedText<"Create member">; edit: import("@wordpress/i18n").TransformedText<"Edit member">; }; "membership-types": { title: import("@wordpress/i18n").TransformedText<"Membership Types">; add: import("@wordpress/i18n").TransformedText<"Add membership type">; create: import("@wordpress/i18n").TransformedText<"Create membership type">; edit: import("@wordpress/i18n").TransformedText<"Edit membership type">; }; memberships: { title: import("@wordpress/i18n").TransformedText<"Memberships">; add: import("@wordpress/i18n").TransformedText<"Add membership">; create: import("@wordpress/i18n").TransformedText<"Create membership">; edit: import("@wordpress/i18n").TransformedText<"Edit membership">; }; };