import { Identity } from "../../trust/exports/authority.js";
import { Intake } from "../views/pages/ingress/intake.js";
export declare namespace Situation {
    type List = {
        kind: "list";
        onCreate: () => Promise<void>;
        onEdit: (identity: Identity) => Promise<void>;
        onDelete: (identities: Identity[]) => Promise<void>;
        onEgress: (identities: Identity[]) => Promise<void>;
        onIngress: () => Promise<void>;
    };
    type Create = {
        kind: "create";
        identities: Identity[];
        initialIdentity: Identity;
        initialIdentitySeed: string;
        onIngress: () => Promise<void>;
        onSave: (identity: Identity) => Promise<void>;
        onDone: () => Promise<void>;
        onBack?: () => Promise<void>;
    };
    type Edit = {
        kind: "edit";
        seed: string;
        identity: Identity;
        onBack: () => Promise<void>;
        onSave: (identity: Identity) => Promise<void>;
        onDelete: (identity: Identity) => Promise<void>;
    };
    type Delete = {
        kind: "delete";
        identities: Identity[];
        onBack: () => Promise<void>;
        onDelete: (ids: string[]) => Promise<void>;
    };
    type Ingress = {
        kind: "ingress";
        intake: Intake;
        onBack: () => Promise<void>;
        onSave: (identities: Identity[]) => Promise<void>;
    };
    type Any = List | Create | Edit | Delete | Ingress;
}
