UNPKG

@ticketto/protocol

Version:

Library that defines the interfaces of the ticketto protocol to be implemented on a client

28 lines (27 loc) 999 B
import { Account, AccountId } from "@ticketto/types"; export interface DirectoryStorage { /** * Returns the list of all existing accounts. */ all(): Promise<Account[]>; /** * Returns this list of accounts, indexed by display. * @param display A nickname to display quickly identifying an account. */ indexByDisplay(display: string): Promise<Account[]>; /** * Returns this list of accounts, indexed by phone. * @param phone The phone number of the {@link Account}. */ indexByPhone(phone: string): Promise<Account[]>; /** * Returns this list of accounts, indexed by email. * @param email The email of the {@link Account}. */ indexByEmail(email: string): Promise<Account[]>; /** * Returns an account by its ID. Returns undefined if no account is found. * @param accountId The {@link AccountId} that identifies an {@link Account}. */ get(accountId: AccountId): Promise<Account | undefined>; }