import { authFirst } from "./util";
export const org = {
getAll: authFirst,
create: authFirst,
get: authFirst,
set: authFirst,
addAdmin: authFirst,
addUser: authFirst,
createUser: authFirst,
createToken: authFirst,
expireToken: authFirst,
getUsers: authFirst,
message: authFirst,
removeUser: authFirst,
removeAdmin: authFirst,
};
export interface Org {
getAll: (opts: { account_id?: string }) => Promise<
{
name: string;
title?: string;
admin_account_ids?: string[];
}[]
>;
create: (opts: { account_id?: string; name: string }) => Promise<string>;
get: (opts: { account_id?: string; name: string }) => Promise<{
name: string;
title?: string;
description?: string;
link?: string;
email_address?: string;
admin_account_ids?: string[];
}>;
set: (opts: {
account_id?: string;
name: string;
title?: string;
description?: string;
link?: string;
email_address?: string;
}) => Promise<void>;
addAdmin: (opts: {
account_id?: string;
name: string;
user: string;
}) => Promise<void>;
addUser: (opts: {
account_id?: string;
name: string;
user: string;
}) => Promise<void>;
createUser: (opts: {
account_id?: string;
name: string;
email: string;
firstName: string;
lastName: string;
password: string;
}) => Promise<string>;
removeUser: (opts: {
account_id?: string;
name: string;
user: string;
}) => Promise<void>;
removeAdmin: (opts: {
account_id?: string;
name: string;
user: string;
}) => Promise<void>;
createToken: (opts: {
account_id?: string;
user: string;
}) => Promise<{ token: string; url: string }>;
expireToken: (opts: { account_id?: string; token: string }) => Promise<void>;
getUsers: (opts: { account_id?: string; name: string }) => Promise<
{
first_name: string;
last_name: string;
account_id: string;
email_address: string;
}[]
>;
message: (opts: {
account_id?: string;
name: string;
subject: string;
body: string;
}) => Promise<void>;
}