/** * G11 — shared PWA + kiosk label helpers for contact-policy-driven copy. * Default axes match Rest A (`email`) when payload is missing. */ import type { CustomerContactPolicyPayload } from './customerContactPolicy.js'; export type ContactIdentifierCopyKind = 'email' | 'phone' | 'emailOrPhone'; export type PasswordIdentifierCopyKind = 'withoutPhone' | 'withPhone'; type ContactPolicyAxes = Pick; /** Resolve which identifier copy to show from GET contact-policy axes. */ export declare function resolveContactIdentifierCopyKind(policy: ContactPolicyAxes | null | undefined): ContactIdentifierCopyKind; /** Password lookup copy — phone only when policy allows phone (G17). */ export declare function resolvePasswordIdentifierCopyKind(policy: ContactPolicyAxes | null | undefined): PasswordIdentifierCopyKind; /** * Identifier `inputMode`: phone-only → tel; email-only → email; * dual → tel when value looks like E.164 / digits, else email. * Prefer `type="text"` with this inputMode (not native type=email). */ export declare function resolveContactIdentifierInputMode(args: { copyKind: ContactIdentifierCopyKind; rawIdentifier: string; }): 'email' | 'tel'; export {}; //# sourceMappingURL=customerContactPolicyLabels.d.ts.map