@authduo/authduo
Version:
Free User-sovereign Authentication for the World
52 lines (51 loc) • 1.57 kB
TypeScript
import { Passport } from "../../auth/passport.js";
import { PassportStore } from "./passport-store.js";
import { PassportsFile } from "../../auth/passports-file.js";
export declare namespace Situation {
type List = {
kind: "list";
passportStore: PassportStore;
onCreate: () => void;
onEdit: (passport: Passport) => void;
onEgress: (passports: Passport[]) => void;
onIngress: (passportsFile: PassportsFile | undefined) => void;
};
type Onboard = {
kind: "onboard";
passport: Passport;
onIngress: () => void;
onSaveNewPassport: (passport: Passport) => void;
onDone: () => void;
};
type Create = {
kind: "create";
passport: Passport;
onCancel: () => void;
onComplete: (passport: Passport) => void;
};
type Edit = {
kind: "edit";
passport: Passport;
onCancel: () => void;
onDelete: (passport: Passport) => void;
onComplete: (passport: Passport) => void;
};
type Delete = {
kind: "delete";
passport: Passport;
onCancel: () => void;
onComplete: (passport: Passport) => void;
};
type Egress = {
kind: "egress";
passports: Passport[];
onBack: () => void;
};
type Ingress = {
kind: "ingress";
passports: PassportsFile | undefined;
onBack: () => void;
onAddPassports: (passports: Passport[]) => void;
};
type Any = List | Onboard | Create | Edit | Delete | Egress | Ingress;
}