import { GenericObject, PERMISSION } from '@ant-basement/core'; export interface CommandJSONObject extends GenericObject { options?: GenericObject; command?: string; } export declare class BaseCommand { readonly name: string; protected _schema: GenericObject; protected _argMap: GenericObject; protected _permission: PERMISSION; constructor(argMap: GenericObject); readonly permission: PERMISSION; readonly argMap: GenericObject; readonly schema: GenericObject; augmentOptions(options: GenericObject): void; inspect(): CommandJSONObject; } export declare class ListCollectionsCommand extends BaseCommand { name: string; protected _permission: PERMISSION; } export declare class CreateCollectionCommand extends BaseCommand { name: string; protected _schema: { name: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class RenameCollectionCommand extends BaseCommand { name: string; protected _schema: { newName: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DeleteCollectionCommand extends BaseCommand { name: string; protected _permission: PERMISSION; } export declare class ListIndicesCommand extends BaseCommand { name: string; protected _schema: { options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class CreateIndexCommand extends BaseCommand { name: string; protected _schema: { field: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class CreateIndicesCommand extends BaseCommand { name: string; protected _schema: { fields: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DropIndexCommand extends BaseCommand { name: string; protected _schema: { indexName: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DropIndicesCommand extends BaseCommand { name: string; protected _schema: { options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class AggregateCommand extends BaseCommand { name: string; protected _schema: { pipeline: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class CountCommand extends BaseCommand { name: string; protected _schema: { query: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DistinctCommand extends BaseCommand { name: string; protected _schema: { key: string; query: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class FindDocumentCommand extends BaseCommand { name: string; protected _schema: { query: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class FindDocumentsCommand extends BaseCommand { name: string; protected _schema: { query: { type: string; required: boolean; }; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class InsertDocumentCommand extends BaseCommand { name: string; protected _schema: { doc: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class InsertDocumentsCommand extends BaseCommand { name: string; protected _schema: { docs: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class FindAndUpdateDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; update: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class UpdateDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; update: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class UpdateDocumentsCommand extends BaseCommand { name: string; protected _schema: { filter: string; update: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class FindAndReplaceDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; replacement: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class ReplaceDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; doc: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class FindAndDeleteDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DeleteDocumentCommand extends BaseCommand { name: string; protected _schema: { filter: string; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; } export declare class DeleteDocumentsCommand extends BaseCommand { name: string; protected _schema: { filter: { type: string; required: boolean; }; options: { type: string; required: boolean; }; }; protected _permission: PERMISSION; }