import { AvatarUploadError, AvatarUploadMetadata, AvatarUploadResult } from '../avatar-upload/types'; import { ShareProfileModalMetadata } from '../share-profile-modal/types'; import { CtaCardMetadata } from '../../molecules/cta-card/types'; import { EmptyStateMetadata } from '../../molecules/empty-state/types'; import { FormMetadata, FormSubmit } from '../../types'; import { GetProfileResponse } from '../../../services/auth/types'; import { ProfileViewConfig } from './types'; import * as i0 from "@angular/core"; /** * `val-profile-content` — CONTENIDO del perfil (avatar + handle + nombre + teléfono * en un form con un botón). Presentacional + lógica de datos, SIN cromática de * página: NO toca `NavigationService` ni el header del shell. * * Lo reutilizan tanto la vista ruteada (`val-profile-view`, que sí setea el header) * como el modal (`val-profile-modal`). Así el modal no contamina el header del shell. * * Toda la lógica (lectura reactiva del mirror Firestore /users/{uid} + fallback REST, * submit con diff handle→profile, avatar upload, estados, i18n) vive aquí. */ export declare class ProfileContentComponent { private auth; private i18n; private toast; private errors; private firebase; private collections; private route; config?: ProfileViewConfig; readonly resolvedConfig: import("@angular/core").Signal> & Pick>; /** Namespace i18n resuelto (público para que la vista ruteada arme el header). */ get ns(): string; private usersCol; private formCmp; readonly profile: import("@angular/core").WritableSignal; readonly loading: import("@angular/core").WritableSignal; readonly saving: import("@angular/core").WritableSignal; readonly loadError: import("@angular/core").WritableSignal; readonly shareOpen: import("@angular/core").WritableSignal; readonly shareCta: import("@angular/core").Signal; readonly shareModal: import("@angular/core").Signal; private readonly _userId; readonly errorState: import("@angular/core").Signal; readonly avatarProps: import("@angular/core").Signal; formMeta: FormMetadata; constructor(); private buildFormMeta; private applyI18nLabels; private loadFromApi; private mapMirrorToProfile; onSubmit(event: FormSubmit): Promise; onAvatarUploaded(result: AvatarUploadResult): void; onAvatarError(_err: AvatarUploadError): void; protected t(key: string): string; private initialsFromName; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }