import _m0 from 'protobufjs/minimal';
/**
 * Configuration to apply to the given instance.
 * Any missing field will be kept at the default value.
 */
export interface Configuration {
    /** The directories configuration. */
    directories: Configuration_Directories | undefined;
    /** The network configuration. */
    network: Configuration_Network | undefined;
    /** The sketch configuration. */
    sketch: Configuration_Sketch | undefined;
    /** The build cache configuration. */
    buildCache: Configuration_BuildCache | undefined;
    /** The board manager configuration. */
    boardManager: Configuration_BoardManager | undefined;
    /** The daemon configuration. */
    daemon: Configuration_Daemon | undefined;
    /** The console output configuration. */
    output: Configuration_Output | undefined;
    /** The logging configuration. */
    logging: Configuration_Logging | undefined;
    /** The library configuration. */
    library: Configuration_Library | undefined;
    /** The updater configuration. */
    updater: Configuration_Updater | undefined;
    /** The language locale to use. */
    locale?: string | undefined;
}
export interface Configuration_Directories {
    /** Data directory. */
    data: string;
    /** User directory. */
    user: string;
    /** Downloads directory. */
    downloads: string;
    /** The directory where the built-in resources are installed. */
    builtin?: Configuration_Directories_Builtin | undefined;
}
export interface Configuration_Directories_Builtin {
    /** The directory where the built-in libraries are installed. */
    libraries?: string | undefined;
}
export interface Configuration_Network {
    /** Extra user-agent information to be appended in network requests. */
    extraUserAgent?: string | undefined;
    /** The proxy to use for network requests. */
    proxy?: string | undefined;
}
export interface Configuration_Sketch {
    /** Set to true to always export binaries to the sketch directory. */
    alwaysExportBinaries: boolean;
}
export interface Configuration_BuildCache {
    /** The minimum number of compilations before the cache is purged. */
    compilationsBeforePurge: number;
    /** Time to live of the cache in seconds. */
    ttlSecs: number;
}
export interface Configuration_BoardManager {
    /** Additional URLs to be used for the board manager. */
    additionalUrls: string[];
}
export interface Configuration_Daemon {
    /** The TCP port of the daemon. */
    port: string;
}
export interface Configuration_Output {
    /** Set to true to disable coloring of the output. */
    noColor: boolean;
}
export interface Configuration_Logging {
    /** The logging level. */
    level: string;
    /** The logging format. */
    format: string;
    /** The logging file. */
    file?: string | undefined;
}
export interface Configuration_Library {
    /**
     * Set to true to enable library installation from zip archives or git
     * repositories.
     */
    enableUnsafeInstall: boolean;
}
export interface Configuration_Updater {
    /** Set to true to enable notifications for updates. */
    enableNotification: boolean;
}
export interface ConfigurationGetRequest {
}
export interface ConfigurationGetResponse {
    /** The current configuration. */
    configuration: Configuration | undefined;
}
export interface ConfigurationSaveRequest {
    /** The format of the encoded settings, allowed values are "json" and "yaml". */
    settingsFormat: string;
}
export interface ConfigurationSaveResponse {
    /** The encoded settings. */
    encodedSettings: string;
}
export interface ConfigurationOpenRequest {
    /** The encoded settings. */
    encodedSettings: string;
    /** The format of the encoded settings, allowed values are "json" and "yaml". */
    settingsFormat: string;
}
export interface ConfigurationOpenResponse {
    /**
     * Warnings that occurred while opening the configuration (e.g. unknown keys,
     * or invalid values).
     */
    warnings: string[];
}
export interface SettingsGetValueRequest {
    /** The key to get. */
    key: string;
    /**
     * The format of the encoded_value (default is "json", allowed values are
     * "json" and "yaml).
     */
    valueFormat: string;
}
export interface SettingsGetValueResponse {
    /** The value of the key (encoded). */
    encodedValue: string;
}
export interface SettingsSetValueRequest {
    /** The key to change. */
    key: string;
    /**
     * The new value (encoded), no objects, only scalar or array of scalars are
     * allowed.
     */
    encodedValue: string;
    /**
     * The format of the encoded_value (default is "json", allowed values are
     * "json", "yaml" and "cli").
     */
    valueFormat: string;
}
export interface SettingsSetValueResponse {
}
export interface SettingsEnumerateRequest {
}
export interface SettingsEnumerateResponse {
    /** The list of key/value pairs. */
    entries: SettingsEnumerateResponse_Entry[];
}
export interface SettingsEnumerateResponse_Entry {
    /** The key. */
    key: string;
    /** The key type. */
    type: string;
}
export declare const Configuration: {
    encode(message: Configuration, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration;
    fromJSON(object: any): Configuration;
    toJSON(message: Configuration): unknown;
    create(base?: DeepPartial<Configuration>): Configuration;
    fromPartial(object: DeepPartial<Configuration>): Configuration;
};
export declare const Configuration_Directories: {
    encode(message: Configuration_Directories, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Directories;
    fromJSON(object: any): Configuration_Directories;
    toJSON(message: Configuration_Directories): unknown;
    create(base?: DeepPartial<Configuration_Directories>): Configuration_Directories;
    fromPartial(object: DeepPartial<Configuration_Directories>): Configuration_Directories;
};
export declare const Configuration_Directories_Builtin: {
    encode(message: Configuration_Directories_Builtin, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Directories_Builtin;
    fromJSON(object: any): Configuration_Directories_Builtin;
    toJSON(message: Configuration_Directories_Builtin): unknown;
    create(base?: DeepPartial<Configuration_Directories_Builtin>): Configuration_Directories_Builtin;
    fromPartial(object: DeepPartial<Configuration_Directories_Builtin>): Configuration_Directories_Builtin;
};
export declare const Configuration_Network: {
    encode(message: Configuration_Network, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Network;
    fromJSON(object: any): Configuration_Network;
    toJSON(message: Configuration_Network): unknown;
    create(base?: DeepPartial<Configuration_Network>): Configuration_Network;
    fromPartial(object: DeepPartial<Configuration_Network>): Configuration_Network;
};
export declare const Configuration_Sketch: {
    encode(message: Configuration_Sketch, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Sketch;
    fromJSON(object: any): Configuration_Sketch;
    toJSON(message: Configuration_Sketch): unknown;
    create(base?: DeepPartial<Configuration_Sketch>): Configuration_Sketch;
    fromPartial(object: DeepPartial<Configuration_Sketch>): Configuration_Sketch;
};
export declare const Configuration_BuildCache: {
    encode(message: Configuration_BuildCache, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_BuildCache;
    fromJSON(object: any): Configuration_BuildCache;
    toJSON(message: Configuration_BuildCache): unknown;
    create(base?: DeepPartial<Configuration_BuildCache>): Configuration_BuildCache;
    fromPartial(object: DeepPartial<Configuration_BuildCache>): Configuration_BuildCache;
};
export declare const Configuration_BoardManager: {
    encode(message: Configuration_BoardManager, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_BoardManager;
    fromJSON(object: any): Configuration_BoardManager;
    toJSON(message: Configuration_BoardManager): unknown;
    create(base?: DeepPartial<Configuration_BoardManager>): Configuration_BoardManager;
    fromPartial(object: DeepPartial<Configuration_BoardManager>): Configuration_BoardManager;
};
export declare const Configuration_Daemon: {
    encode(message: Configuration_Daemon, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Daemon;
    fromJSON(object: any): Configuration_Daemon;
    toJSON(message: Configuration_Daemon): unknown;
    create(base?: DeepPartial<Configuration_Daemon>): Configuration_Daemon;
    fromPartial(object: DeepPartial<Configuration_Daemon>): Configuration_Daemon;
};
export declare const Configuration_Output: {
    encode(message: Configuration_Output, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Output;
    fromJSON(object: any): Configuration_Output;
    toJSON(message: Configuration_Output): unknown;
    create(base?: DeepPartial<Configuration_Output>): Configuration_Output;
    fromPartial(object: DeepPartial<Configuration_Output>): Configuration_Output;
};
export declare const Configuration_Logging: {
    encode(message: Configuration_Logging, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Logging;
    fromJSON(object: any): Configuration_Logging;
    toJSON(message: Configuration_Logging): unknown;
    create(base?: DeepPartial<Configuration_Logging>): Configuration_Logging;
    fromPartial(object: DeepPartial<Configuration_Logging>): Configuration_Logging;
};
export declare const Configuration_Library: {
    encode(message: Configuration_Library, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Library;
    fromJSON(object: any): Configuration_Library;
    toJSON(message: Configuration_Library): unknown;
    create(base?: DeepPartial<Configuration_Library>): Configuration_Library;
    fromPartial(object: DeepPartial<Configuration_Library>): Configuration_Library;
};
export declare const Configuration_Updater: {
    encode(message: Configuration_Updater, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Configuration_Updater;
    fromJSON(object: any): Configuration_Updater;
    toJSON(message: Configuration_Updater): unknown;
    create(base?: DeepPartial<Configuration_Updater>): Configuration_Updater;
    fromPartial(object: DeepPartial<Configuration_Updater>): Configuration_Updater;
};
export declare const ConfigurationGetRequest: {
    encode(_: ConfigurationGetRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationGetRequest;
    fromJSON(_: any): ConfigurationGetRequest;
    toJSON(_: ConfigurationGetRequest): unknown;
    create(base?: DeepPartial<ConfigurationGetRequest>): ConfigurationGetRequest;
    fromPartial(_: DeepPartial<ConfigurationGetRequest>): ConfigurationGetRequest;
};
export declare const ConfigurationGetResponse: {
    encode(message: ConfigurationGetResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationGetResponse;
    fromJSON(object: any): ConfigurationGetResponse;
    toJSON(message: ConfigurationGetResponse): unknown;
    create(base?: DeepPartial<ConfigurationGetResponse>): ConfigurationGetResponse;
    fromPartial(object: DeepPartial<ConfigurationGetResponse>): ConfigurationGetResponse;
};
export declare const ConfigurationSaveRequest: {
    encode(message: ConfigurationSaveRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationSaveRequest;
    fromJSON(object: any): ConfigurationSaveRequest;
    toJSON(message: ConfigurationSaveRequest): unknown;
    create(base?: DeepPartial<ConfigurationSaveRequest>): ConfigurationSaveRequest;
    fromPartial(object: DeepPartial<ConfigurationSaveRequest>): ConfigurationSaveRequest;
};
export declare const ConfigurationSaveResponse: {
    encode(message: ConfigurationSaveResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationSaveResponse;
    fromJSON(object: any): ConfigurationSaveResponse;
    toJSON(message: ConfigurationSaveResponse): unknown;
    create(base?: DeepPartial<ConfigurationSaveResponse>): ConfigurationSaveResponse;
    fromPartial(object: DeepPartial<ConfigurationSaveResponse>): ConfigurationSaveResponse;
};
export declare const ConfigurationOpenRequest: {
    encode(message: ConfigurationOpenRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationOpenRequest;
    fromJSON(object: any): ConfigurationOpenRequest;
    toJSON(message: ConfigurationOpenRequest): unknown;
    create(base?: DeepPartial<ConfigurationOpenRequest>): ConfigurationOpenRequest;
    fromPartial(object: DeepPartial<ConfigurationOpenRequest>): ConfigurationOpenRequest;
};
export declare const ConfigurationOpenResponse: {
    encode(message: ConfigurationOpenResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ConfigurationOpenResponse;
    fromJSON(object: any): ConfigurationOpenResponse;
    toJSON(message: ConfigurationOpenResponse): unknown;
    create(base?: DeepPartial<ConfigurationOpenResponse>): ConfigurationOpenResponse;
    fromPartial(object: DeepPartial<ConfigurationOpenResponse>): ConfigurationOpenResponse;
};
export declare const SettingsGetValueRequest: {
    encode(message: SettingsGetValueRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsGetValueRequest;
    fromJSON(object: any): SettingsGetValueRequest;
    toJSON(message: SettingsGetValueRequest): unknown;
    create(base?: DeepPartial<SettingsGetValueRequest>): SettingsGetValueRequest;
    fromPartial(object: DeepPartial<SettingsGetValueRequest>): SettingsGetValueRequest;
};
export declare const SettingsGetValueResponse: {
    encode(message: SettingsGetValueResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsGetValueResponse;
    fromJSON(object: any): SettingsGetValueResponse;
    toJSON(message: SettingsGetValueResponse): unknown;
    create(base?: DeepPartial<SettingsGetValueResponse>): SettingsGetValueResponse;
    fromPartial(object: DeepPartial<SettingsGetValueResponse>): SettingsGetValueResponse;
};
export declare const SettingsSetValueRequest: {
    encode(message: SettingsSetValueRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsSetValueRequest;
    fromJSON(object: any): SettingsSetValueRequest;
    toJSON(message: SettingsSetValueRequest): unknown;
    create(base?: DeepPartial<SettingsSetValueRequest>): SettingsSetValueRequest;
    fromPartial(object: DeepPartial<SettingsSetValueRequest>): SettingsSetValueRequest;
};
export declare const SettingsSetValueResponse: {
    encode(_: SettingsSetValueResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsSetValueResponse;
    fromJSON(_: any): SettingsSetValueResponse;
    toJSON(_: SettingsSetValueResponse): unknown;
    create(base?: DeepPartial<SettingsSetValueResponse>): SettingsSetValueResponse;
    fromPartial(_: DeepPartial<SettingsSetValueResponse>): SettingsSetValueResponse;
};
export declare const SettingsEnumerateRequest: {
    encode(_: SettingsEnumerateRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsEnumerateRequest;
    fromJSON(_: any): SettingsEnumerateRequest;
    toJSON(_: SettingsEnumerateRequest): unknown;
    create(base?: DeepPartial<SettingsEnumerateRequest>): SettingsEnumerateRequest;
    fromPartial(_: DeepPartial<SettingsEnumerateRequest>): SettingsEnumerateRequest;
};
export declare const SettingsEnumerateResponse: {
    encode(message: SettingsEnumerateResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsEnumerateResponse;
    fromJSON(object: any): SettingsEnumerateResponse;
    toJSON(message: SettingsEnumerateResponse): unknown;
    create(base?: DeepPartial<SettingsEnumerateResponse>): SettingsEnumerateResponse;
    fromPartial(object: DeepPartial<SettingsEnumerateResponse>): SettingsEnumerateResponse;
};
export declare const SettingsEnumerateResponse_Entry: {
    encode(message: SettingsEnumerateResponse_Entry, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SettingsEnumerateResponse_Entry;
    fromJSON(object: any): SettingsEnumerateResponse_Entry;
    toJSON(message: SettingsEnumerateResponse_Entry): unknown;
    create(base?: DeepPartial<SettingsEnumerateResponse_Entry>): SettingsEnumerateResponse_Entry;
    fromPartial(object: DeepPartial<SettingsEnumerateResponse_Entry>): SettingsEnumerateResponse_Entry;
};
declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {
    $case: string;
} ? {
    [K in keyof Omit<T, '$case'>]?: DeepPartial<T[K]>;
} & {
    $case: T['$case'];
} : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
export {};
//# sourceMappingURL=settings.d.ts.map