import { Command } from "../../../deps.js";
export interface Instance {
    remote: string;
    name: string;
    token: string;
    prefix: string;
}
export declare function allInstances(): Promise<Instance[]>;
export declare function addInstance(opts: {}, instanceName: string | undefined, remote: string | undefined, token: string | undefined): Promise<{
    name: string;
    remote: string;
    token: string;
    prefix: string;
}>;
type CompareObject<T extends string> = {
    [K in T]: string;
};
export declare function compareInstanceObjects<T extends string>(fromObjects: CompareObject<T>[], toObjects: CompareObject<T>[], idProp: T, objectName: string): number;
export type InstanceSyncOptions = {
    skipUsers?: boolean;
    skipSettings?: boolean;
    skipConfigs?: boolean;
    skipGroups?: boolean;
    includeWorkspaces?: boolean;
    instance?: string;
    baseUrl?: string;
    token?: string;
    folderPerInstance?: boolean;
    dryRun?: boolean;
    yes?: boolean;
    prefix?: string;
    prefixSettings?: boolean;
};
export declare function pickInstance(opts: InstanceSyncOptions, allowNew: boolean): Promise<Instance>;
export declare function getActiveInstance(opts: {
    instance?: string;
}): Promise<string | undefined>;
declare const command: Command<void, void, void, [], void, void, void, Command<void, void, void, [], void, {
    number: number;
    integer: number;
    string: string;
    boolean: boolean;
    file: string;
}, void, undefined>>;
export default command;
//# sourceMappingURL=instance.d.ts.map