UNPKG

@tak-ps/node-tak

Version:

Lightweight JavaScript library for communicating with TAK Server

132 lines (131 loc) 6.82 kB
import { Static } from '@sinclair/typebox'; import { MissionOptions } from './mission.js'; import Commands, { CommandOutputFormat, type ParsedArgs } from '../commands.js'; export declare enum MissionSubscriberRole { MISSION_OWNER = "MISSION_OWNER", MISSION_SUBSCRIBER = "MISSION_SUBSCRIBER", MISSION_READONLY_SUBSCRIBER = "MISSION_READONLY_SUBSCRIBER" } export declare enum MissionInviteType { CLIENT_UID = "clientUid", CALLSIGN = "callsign", USERNAME = "userName", GROUP = "group", TEAM = "team" } export declare const MissionRole: import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>; }>; export declare const MissionInvite: import("@sinclair/typebox").TObject<{ missionName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; invitee: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; type: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; creatorUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; createTime: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; token: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; role: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>; }>>; missionGuid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; }>; export declare const MissionInviteList: import("@sinclair/typebox").TObject<{ version: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TString; data: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{ missionName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; invitee: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; type: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; creatorUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; createTime: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; token: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; role: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>; }>>; missionGuid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; }>>; messages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>; nodeId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>; }>; /** * @class */ export default class MissionInviteCommands extends Commands { #private; schema: { list: { description: string; params: import("@sinclair/typebox").TObject<{}>; query: import("@sinclair/typebox").TObject<{}>; formats: CommandOutputFormat[]; }; get: { description: string; params: import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TString; }>; query: import("@sinclair/typebox").TObject<{}>; formats: CommandOutputFormat[]; }; invite: { description: string; params: import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TEnum<typeof MissionInviteType>; invitee: import("@sinclair/typebox").TString; }>; query: import("@sinclair/typebox").TObject<{ creatorUid: import("@sinclair/typebox").TString; role: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TEnum<typeof MissionSubscriberRole>>; }>; formats: CommandOutputFormat[]; }; uninvite: { description: string; params: import("@sinclair/typebox").TObject<{ name: import("@sinclair/typebox").TString; type: import("@sinclair/typebox").TEnum<typeof MissionInviteType>; invitee: import("@sinclair/typebox").TString; }>; query: import("@sinclair/typebox").TObject<{ creatorUid: import("@sinclair/typebox").TString; }>; formats: CommandOutputFormat[]; }; }; cli(args: ParsedArgs): Promise<object | string>; /** * List all Invitations for missions * * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/getAllMissionInvitations TAK Server Docs}. */ list(clientUid: string, opts?: Static<typeof MissionOptions>): Promise<Static<typeof MissionInviteList>>; /** * Get Mission Invitations * * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/getMissionInvitations TAK Server Docs}. */ get(missionName: string, opts?: Static<typeof MissionOptions>): Promise<Static<typeof MissionInviteList>>; /** * Invite a user/group to a mission * * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/inviteToMission TAK Server Docs}. */ invite(missionName: string, type: MissionInviteType, invitee: string, query: { creatorUid: string; role?: MissionSubscriberRole; }, opts?: Static<typeof MissionOptions>): Promise<void>; /** * Uninvite a user/group from a mission * * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/uninviteFromMission TAK Server Docs}. */ uninvite(missionName: string, type: MissionInviteType, invitee: string, query: { creatorUid: string; }, opts?: Static<typeof MissionOptions>): Promise<void>; }