import { Static } from '@sinclair/typebox';
import type { MissionOptions } from './mission.js';
import Commands from '../commands.js';
export declare const MissionLog: import("@sinclair/typebox").TObject<{
    id: import("@sinclair/typebox").TString;
    content: import("@sinclair/typebox").TString;
    creatorUid: import("@sinclair/typebox").TString;
    missionNames: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
    servertime: import("@sinclair/typebox").TString;
    dtg: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    entryUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    created: import("@sinclair/typebox").TString;
    contentHashes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
    keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
}>;
export declare const CreateMissionLog: import("@sinclair/typebox").TObject<{
    dtg: import("@sinclair/typebox").TString;
    entryUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    content: import("@sinclair/typebox").TString;
    creatorUid: import("@sinclair/typebox").TString;
    contentHashes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    keywords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
}>;
export declare const UpdateMissionLog: import("@sinclair/typebox").TObject<{
    content: import("@sinclair/typebox").TString;
    creatorUid: import("@sinclair/typebox").TString;
    dtg: import("@sinclair/typebox").TString;
    entryUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
    contentHashes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    keywords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
    id: import("@sinclair/typebox").TString;
}>;
export declare const TAKItem_MissionLog: import("@sinclair/typebox").TObject<{
    version: import("@sinclair/typebox").TString;
    type: import("@sinclair/typebox").TString;
    data: import("@sinclair/typebox").TObject<{
        id: import("@sinclair/typebox").TString;
        content: import("@sinclair/typebox").TString;
        creatorUid: import("@sinclair/typebox").TString;
        missionNames: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
        servertime: import("@sinclair/typebox").TString;
        dtg: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        entryUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
        created: import("@sinclair/typebox").TString;
        contentHashes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
        keywords: import("@sinclair/typebox").TArray<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>;
}>;
export default class MissionLogCommands extends Commands {
    #private;
    schema: {};
    cli(): Promise<object | string>;
    /**
     * Delete a log entry on a Mission Sync
     *
     * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/deleteLogEntry TAK Server Docs}.
     */
    delete(log: string, opts?: Static<typeof MissionOptions>): Promise<void>;
    /**
     * Get a log entry on a Mission Sync
     *
     * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/getOneLogEntry TAK Server Docs}.
     */
    get(id: string): Promise<Static<typeof TAKItem_MissionLog>>;
    /**
     * Create a log entry on a Mission Sync
     *
     * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/postLogEntry TAK Server Docs}.
     */
    create(mission: string, body: Static<typeof CreateMissionLog>, opts?: Static<typeof MissionOptions>): Promise<Static<typeof TAKItem_MissionLog>>;
    /**
     * Update a log entry on a Mission Sync
     *
     * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/updateLogEntry TAK Server Docs}.
     */
    update(mission: string, body: Static<typeof UpdateMissionLog>, opts?: Static<typeof MissionOptions>): Promise<Static<typeof TAKItem_MissionLog>>;
}
