UNPKG

@grouparoo/core

Version:
245 lines (244 loc) 7.6 kB
import { AuthenticatedAction } from "../classes/actions/authenticatedAction"; import { CLSAction } from "../classes/actions/clsAction"; import { APIData } from "../modules/apiData"; import { ActionPermission } from "../models/Permission"; import { ParamsFrom } from "actionhero"; export declare class TeamInitialize extends CLSAction { name: string; description: string; permission: ActionPermission; outputExample: {}; inputs: { readonly firstName: { readonly required: true; }; readonly lastName: { readonly required: true; }; readonly password: { readonly required: true; }; readonly email: { readonly required: true; }; readonly companyName: { readonly required: false; }; readonly subscribed: { readonly required: false; readonly default: true; readonly formatter: typeof APIData.ensureBoolean; }; }; runWithinTransaction({ params, }: { params: ParamsFrom<TeamInitialize>; }): Promise<{ team: { id: string; name: string; locked: string; permissionAllRead: boolean; permissionAllWrite: boolean; createdAt: number; updatedAt: number; permissions: { id: string; topic: "file" | "record" | "source" | "group" | "import" | "system" | "run" | "resque" | "log" | "model" | "app" | "property" | "export" | "destination" | "apiKey" | "notification" | "setupStep" | "team"; read: boolean; write: boolean; locked: string; }[]; membersCount: number; }; teamMember: { id: string; teamId: string; firstName: string; lastName: string; email: string; locked: string; lastLoginAt: Date; createdAt: number; updatedAt: number; }; }>; } export declare class TeamsList extends AuthenticatedAction { name: string; description: string; outputExample: {}; permission: ActionPermission; runWithinTransaction(): Promise<{ teams: { id: string; name: string; locked: string; permissionAllRead: boolean; permissionAllWrite: boolean; createdAt: number; updatedAt: number; permissions: { id: string; topic: "file" | "record" | "source" | "group" | "import" | "system" | "run" | "resque" | "log" | "model" | "app" | "property" | "export" | "destination" | "apiKey" | "notification" | "setupStep" | "team"; read: boolean; write: boolean; locked: string; }[]; membersCount: number; }[]; }>; } export declare class TeamCreate extends AuthenticatedAction { name: string; description: string; outputExample: {}; permission: ActionPermission; inputs: { readonly name: { readonly required: true; }; readonly permissionAllRead: { readonly required: false; readonly default: true; }; readonly permissionAllWrite: { readonly required: false; readonly default: false; }; readonly permissions: { readonly required: false; readonly formatter: typeof APIData.ensureArray; }; }; runWithinTransaction({ params }: { params: ParamsFrom<TeamCreate>; }): Promise<{ team: { id: string; name: string; locked: string; permissionAllRead: boolean; permissionAllWrite: boolean; createdAt: number; updatedAt: number; permissions: { id: string; topic: "file" | "record" | "source" | "group" | "import" | "system" | "run" | "resque" | "log" | "model" | "app" | "property" | "export" | "destination" | "apiKey" | "notification" | "setupStep" | "team"; read: boolean; write: boolean; locked: string; }[]; membersCount: number; }; }>; } export declare class TeamEdit extends AuthenticatedAction { name: string; description: string; outputExample: {}; permission: ActionPermission; inputs: { id: { required: true; }; name: { required: boolean; }; permissionAllRead: { required: boolean; }; permissionAllWrite: { required: boolean; }; disabledPermissionAllRead: { required: boolean; }; disabledPermissionAllWrite: { required: boolean; }; permissions: { required: boolean; formatter: typeof APIData.ensureArray; }; }; runWithinTransaction({ params }: { params: ParamsFrom<TeamEdit>; }): Promise<{ team: { id: string; name: string; locked: string; permissionAllRead: boolean; permissionAllWrite: boolean; createdAt: number; updatedAt: number; permissions: { id: string; topic: "file" | "record" | "source" | "group" | "import" | "system" | "run" | "resque" | "log" | "model" | "app" | "property" | "export" | "destination" | "apiKey" | "notification" | "setupStep" | "team"; read: boolean; write: boolean; locked: string; }[]; membersCount: number; }; }>; } export declare class TeamView extends AuthenticatedAction { name: string; description: string; outputExample: {}; permission: ActionPermission; inputs: { readonly id: { readonly required: true; }; }; runWithinTransaction({ params }: { params: ParamsFrom<TeamView>; }): Promise<{ team: { id: string; name: string; locked: string; permissionAllRead: boolean; permissionAllWrite: boolean; createdAt: number; updatedAt: number; permissions: { id: string; topic: "file" | "record" | "source" | "group" | "import" | "system" | "run" | "resque" | "log" | "model" | "app" | "property" | "export" | "destination" | "apiKey" | "notification" | "setupStep" | "team"; read: boolean; write: boolean; locked: string; }[]; membersCount: number; }; teamMembers: { id: string; teamId: string; firstName: string; lastName: string; email: string; locked: string; lastLoginAt: Date; createdAt: number; updatedAt: number; }[]; }>; } export declare class TeamDestroy extends AuthenticatedAction { name: string; description: string; outputExample: {}; permission: ActionPermission; inputs: { readonly id: { readonly required: true; }; }; runWithinTransaction({ params }: { params: ParamsFrom<TeamDestroy>; }): Promise<{ success: boolean; }>; }