import { OnInit } from '@angular/core';
import { ImportMembersResponse, ImportOnConflict, ImportRowResult } from '../../../services/org/types';
import * as i0 from "@angular/core";
/**
 * `val-member-import-modal` — panel de carga masiva de miembros (ADR-023 fase 6).
 *
 * El admin pega un CSV (`email,nombre,rol`); el modal lo parsea a filas y llama
 * `OrgService.importMembers`. Muestra el resultado por-fila (partial success):
 * `created` / `assigned` / `skipped` / `error`. Header canónico (Regla #5).
 *
 * Auto-registra defaults i18n (es/en) en `Settings.ImportModal`.
 */
export declare class MemberImportModalComponent implements OnInit {
    private i18n;
    private orgService;
    /** Org destino del import. */
    orgId: string;
    /** Nombres de roles disponibles (para el hint). Opcional. */
    availableRoles: string[];
    /** Callback tras una importación exitosa (≥1 fila procesada) — refresca la lista. */
    onSuccess?: () => void;
    /** Inyectado por `ModalService.open`. */
    _modalRef?: {
        dismiss: (data?: unknown, role?: string) => void;
    };
    /** Namespace i18n. */
    i18nNamespace: string;
    csv: string;
    onConflict: ImportOnConflict;
    sendActivation: boolean;
    readonly submitting: import("@angular/core").WritableSignal<boolean>;
    readonly errorMsg: import("@angular/core").WritableSignal<string>;
    readonly results: import("@angular/core").WritableSignal<ImportMembersResponse>;
    readonly rolesHint: import("@angular/core").Signal<string>;
    readonly summaryLabel: import("@angular/core").Signal<string>;
    constructor();
    ngOnInit(): void;
    /** Parsea el CSV pegado a filas {email,name,roleName}. Tolera header. */
    private parseCsv;
    submit(): void;
    statusLabel(r: ImportRowResult): string;
    reset(): void;
    dismiss(): void;
    t(key: string): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<MemberImportModalComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MemberImportModalComponent, "val-member-import-modal", never, { "orgId": { "alias": "orgId"; "required": false; }; "availableRoles": { "alias": "availableRoles"; "required": false; }; "onSuccess": { "alias": "onSuccess"; "required": false; }; "_modalRef": { "alias": "_modalRef"; "required": false; }; "i18nNamespace": { "alias": "i18nNamespace"; "required": false; }; }, {}, never, never, true, never>;
}
