/// <reference types="node" />
/**
 * Generated by the protoc-gen-ts.  DO NOT EDIT!
 * compiler version: 3.19.1
 * source: controlclient.proto
 * git: https://github.com/thesayyn/protoc-gen-ts */
import * as pb_1 from "google-protobuf";
import * as grpc_1 from "@grpc/grpc-js";
export declare namespace control_client {
    export class _SimilarityMetric extends pb_1.Message {
        #private;
        constructor(data?: any[] | ({} & (({
            euclidean_similarity?: _SimilarityMetric._EuclideanSimilarity;
            inner_product?: never;
            cosine_similarity?: never;
        } | {
            euclidean_similarity?: never;
            inner_product?: _SimilarityMetric._InnerProduct;
            cosine_similarity?: never;
        } | {
            euclidean_similarity?: never;
            inner_product?: never;
            cosine_similarity?: _SimilarityMetric._CosineSimilarity;
        }))));
        get euclidean_similarity(): _SimilarityMetric._EuclideanSimilarity;
        set euclidean_similarity(value: _SimilarityMetric._EuclideanSimilarity);
        get has_euclidean_similarity(): boolean;
        get inner_product(): _SimilarityMetric._InnerProduct;
        set inner_product(value: _SimilarityMetric._InnerProduct);
        get has_inner_product(): boolean;
        get cosine_similarity(): _SimilarityMetric._CosineSimilarity;
        set cosine_similarity(value: _SimilarityMetric._CosineSimilarity);
        get has_cosine_similarity(): boolean;
        get similarity_metric(): "none" | "euclidean_similarity" | "inner_product" | "cosine_similarity";
        static fromObject(data: {
            euclidean_similarity?: ReturnType<typeof _SimilarityMetric._EuclideanSimilarity.prototype.toObject>;
            inner_product?: ReturnType<typeof _SimilarityMetric._InnerProduct.prototype.toObject>;
            cosine_similarity?: ReturnType<typeof _SimilarityMetric._CosineSimilarity.prototype.toObject>;
        }): _SimilarityMetric;
        toObject(): {
            euclidean_similarity?: ReturnType<typeof _SimilarityMetric._EuclideanSimilarity.prototype.toObject>;
            inner_product?: ReturnType<typeof _SimilarityMetric._InnerProduct.prototype.toObject>;
            cosine_similarity?: ReturnType<typeof _SimilarityMetric._CosineSimilarity.prototype.toObject>;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _SimilarityMetric;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _SimilarityMetric;
    }
    export namespace _SimilarityMetric {
        class _EuclideanSimilarity extends pb_1.Message {
            #private;
            constructor(data?: any[] | {});
            static fromObject(data: {}): _EuclideanSimilarity;
            toObject(): {};
            serialize(): Uint8Array;
            serialize(w: pb_1.BinaryWriter): void;
            static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _EuclideanSimilarity;
            serializeBinary(): Uint8Array;
            static deserializeBinary(bytes: Uint8Array): _EuclideanSimilarity;
        }
        class _InnerProduct extends pb_1.Message {
            #private;
            constructor(data?: any[] | {});
            static fromObject(data: {}): _InnerProduct;
            toObject(): {};
            serialize(): Uint8Array;
            serialize(w: pb_1.BinaryWriter): void;
            static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _InnerProduct;
            serializeBinary(): Uint8Array;
            static deserializeBinary(bytes: Uint8Array): _InnerProduct;
        }
        class _CosineSimilarity extends pb_1.Message {
            #private;
            constructor(data?: any[] | {});
            static fromObject(data: {}): _CosineSimilarity;
            toObject(): {};
            serialize(): Uint8Array;
            serialize(w: pb_1.BinaryWriter): void;
            static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CosineSimilarity;
            serializeBinary(): Uint8Array;
            static deserializeBinary(bytes: Uint8Array): _CosineSimilarity;
        }
    }
    export class _CreateIndexRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            index_name?: string;
            num_dimensions?: number;
            similarity_metric?: _SimilarityMetric;
        });
        get index_name(): string;
        set index_name(value: string);
        get num_dimensions(): number;
        set num_dimensions(value: number);
        get similarity_metric(): _SimilarityMetric;
        set similarity_metric(value: _SimilarityMetric);
        get has_similarity_metric(): boolean;
        static fromObject(data: {
            index_name?: string;
            num_dimensions?: number;
            similarity_metric?: ReturnType<typeof _SimilarityMetric.prototype.toObject>;
        }): _CreateIndexRequest;
        toObject(): {
            index_name?: string;
            num_dimensions?: number;
            similarity_metric?: ReturnType<typeof _SimilarityMetric.prototype.toObject>;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateIndexRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateIndexRequest;
    }
    export class _CreateIndexResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _CreateIndexResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateIndexResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateIndexResponse;
    }
    export class _DeleteIndexRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            index_name?: string;
        });
        get index_name(): string;
        set index_name(value: string);
        static fromObject(data: {
            index_name?: string;
        }): _DeleteIndexRequest;
        toObject(): {
            index_name?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _DeleteIndexRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _DeleteIndexRequest;
    }
    export class _DeleteIndexResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _DeleteIndexResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _DeleteIndexResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _DeleteIndexResponse;
    }
    export class _ListIndexesRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _ListIndexesRequest;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListIndexesRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListIndexesRequest;
    }
    export class _ListIndexesResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            indexes?: _ListIndexesResponse._Index[];
        });
        get indexes(): _ListIndexesResponse._Index[];
        set indexes(value: _ListIndexesResponse._Index[]);
        static fromObject(data: {
            indexes?: ReturnType<typeof _ListIndexesResponse._Index.prototype.toObject>[];
        }): _ListIndexesResponse;
        toObject(): {
            indexes?: ReturnType<typeof _ListIndexesResponse._Index.prototype.toObject>[];
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListIndexesResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListIndexesResponse;
    }
    export namespace _ListIndexesResponse {
        class _Index extends pb_1.Message {
            #private;
            constructor(data?: any[] | {
                index_name?: string;
                num_dimensions?: number;
                similarity_metric?: _SimilarityMetric;
            });
            get index_name(): string;
            set index_name(value: string);
            get num_dimensions(): number;
            set num_dimensions(value: number);
            get similarity_metric(): _SimilarityMetric;
            set similarity_metric(value: _SimilarityMetric);
            get has_similarity_metric(): boolean;
            static fromObject(data: {
                index_name?: string;
                num_dimensions?: number;
                similarity_metric?: ReturnType<typeof _SimilarityMetric.prototype.toObject>;
            }): _Index;
            toObject(): {
                index_name?: string;
                num_dimensions?: number;
                similarity_metric?: ReturnType<typeof _SimilarityMetric.prototype.toObject>;
            };
            serialize(): Uint8Array;
            serialize(w: pb_1.BinaryWriter): void;
            static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _Index;
            serializeBinary(): Uint8Array;
            static deserializeBinary(bytes: Uint8Array): _Index;
        }
    }
    export class _DeleteCacheRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            cache_name?: string;
        });
        get cache_name(): string;
        set cache_name(value: string);
        static fromObject(data: {
            cache_name?: string;
        }): _DeleteCacheRequest;
        toObject(): {
            cache_name?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _DeleteCacheRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _DeleteCacheRequest;
    }
    export class _DeleteCacheResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _DeleteCacheResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _DeleteCacheResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _DeleteCacheResponse;
    }
    export class _CreateCacheRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            cache_name?: string;
        });
        get cache_name(): string;
        set cache_name(value: string);
        static fromObject(data: {
            cache_name?: string;
        }): _CreateCacheRequest;
        toObject(): {
            cache_name?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateCacheRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateCacheRequest;
    }
    export class _CreateCacheResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _CreateCacheResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateCacheResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateCacheResponse;
    }
    export class _ListCachesRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            next_token?: string;
        });
        get next_token(): string;
        set next_token(value: string);
        static fromObject(data: {
            next_token?: string;
        }): _ListCachesRequest;
        toObject(): {
            next_token?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListCachesRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListCachesRequest;
    }
    export class _CacheLimits extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            max_traffic_rate?: number;
            max_throughput_kbps?: number;
            max_item_size_kb?: number;
            max_ttl_seconds?: number;
        });
        get max_traffic_rate(): number;
        set max_traffic_rate(value: number);
        get max_throughput_kbps(): number;
        set max_throughput_kbps(value: number);
        get max_item_size_kb(): number;
        set max_item_size_kb(value: number);
        get max_ttl_seconds(): number;
        set max_ttl_seconds(value: number);
        static fromObject(data: {
            max_traffic_rate?: number;
            max_throughput_kbps?: number;
            max_item_size_kb?: number;
            max_ttl_seconds?: number;
        }): _CacheLimits;
        toObject(): {
            max_traffic_rate?: number;
            max_throughput_kbps?: number;
            max_item_size_kb?: number;
            max_ttl_seconds?: number;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CacheLimits;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CacheLimits;
    }
    export class _TopicLimits extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            max_publish_rate?: number;
            max_subscription_count?: number;
            max_publish_message_size_kb?: number;
        });
        get max_publish_rate(): number;
        set max_publish_rate(value: number);
        get max_subscription_count(): number;
        set max_subscription_count(value: number);
        get max_publish_message_size_kb(): number;
        set max_publish_message_size_kb(value: number);
        static fromObject(data: {
            max_publish_rate?: number;
            max_subscription_count?: number;
            max_publish_message_size_kb?: number;
        }): _TopicLimits;
        toObject(): {
            max_publish_rate?: number;
            max_subscription_count?: number;
            max_publish_message_size_kb?: number;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _TopicLimits;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _TopicLimits;
    }
    export class _Cache extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            cache_name?: string;
            cache_limits?: _CacheLimits;
            topic_limits?: _TopicLimits;
        });
        get cache_name(): string;
        set cache_name(value: string);
        get cache_limits(): _CacheLimits;
        set cache_limits(value: _CacheLimits);
        get has_cache_limits(): boolean;
        get topic_limits(): _TopicLimits;
        set topic_limits(value: _TopicLimits);
        get has_topic_limits(): boolean;
        static fromObject(data: {
            cache_name?: string;
            cache_limits?: ReturnType<typeof _CacheLimits.prototype.toObject>;
            topic_limits?: ReturnType<typeof _TopicLimits.prototype.toObject>;
        }): _Cache;
        toObject(): {
            cache_name?: string;
            cache_limits?: ReturnType<typeof _CacheLimits.prototype.toObject>;
            topic_limits?: ReturnType<typeof _TopicLimits.prototype.toObject>;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _Cache;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _Cache;
    }
    export class _ListCachesResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            cache?: _Cache[];
            next_token?: string;
        });
        get cache(): _Cache[];
        set cache(value: _Cache[]);
        get next_token(): string;
        set next_token(value: string);
        static fromObject(data: {
            cache?: ReturnType<typeof _Cache.prototype.toObject>[];
            next_token?: string;
        }): _ListCachesResponse;
        toObject(): {
            cache?: ReturnType<typeof _Cache.prototype.toObject>[];
            next_token?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListCachesResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListCachesResponse;
    }
    export class _CreateSigningKeyRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            ttl_minutes?: number;
        });
        get ttl_minutes(): number;
        set ttl_minutes(value: number);
        static fromObject(data: {
            ttl_minutes?: number;
        }): _CreateSigningKeyRequest;
        toObject(): {
            ttl_minutes?: number;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateSigningKeyRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateSigningKeyRequest;
    }
    export class _CreateSigningKeyResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            key?: string;
            expires_at?: number;
        });
        get key(): string;
        set key(value: string);
        get expires_at(): number;
        set expires_at(value: number);
        static fromObject(data: {
            key?: string;
            expires_at?: number;
        }): _CreateSigningKeyResponse;
        toObject(): {
            key?: string;
            expires_at?: number;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _CreateSigningKeyResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _CreateSigningKeyResponse;
    }
    export class _RevokeSigningKeyRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            key_id?: string;
        });
        get key_id(): string;
        set key_id(value: string);
        static fromObject(data: {
            key_id?: string;
        }): _RevokeSigningKeyRequest;
        toObject(): {
            key_id?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _RevokeSigningKeyRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _RevokeSigningKeyRequest;
    }
    export class _RevokeSigningKeyResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _RevokeSigningKeyResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _RevokeSigningKeyResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _RevokeSigningKeyResponse;
    }
    export class _SigningKey extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            key_id?: string;
            expires_at?: number;
        });
        get key_id(): string;
        set key_id(value: string);
        get expires_at(): number;
        set expires_at(value: number);
        static fromObject(data: {
            key_id?: string;
            expires_at?: number;
        }): _SigningKey;
        toObject(): {
            key_id?: string;
            expires_at?: number;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _SigningKey;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _SigningKey;
    }
    export class _ListSigningKeysRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            next_token?: string;
        });
        get next_token(): string;
        set next_token(value: string);
        static fromObject(data: {
            next_token?: string;
        }): _ListSigningKeysRequest;
        toObject(): {
            next_token?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListSigningKeysRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListSigningKeysRequest;
    }
    export class _ListSigningKeysResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            signing_key?: _SigningKey[];
            next_token?: string;
        });
        get signing_key(): _SigningKey[];
        set signing_key(value: _SigningKey[]);
        get next_token(): string;
        set next_token(value: string);
        static fromObject(data: {
            signing_key?: ReturnType<typeof _SigningKey.prototype.toObject>[];
            next_token?: string;
        }): _ListSigningKeysResponse;
        toObject(): {
            signing_key?: ReturnType<typeof _SigningKey.prototype.toObject>[];
            next_token?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _ListSigningKeysResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _ListSigningKeysResponse;
    }
    export class _FlushCacheRequest extends pb_1.Message {
        #private;
        constructor(data?: any[] | {
            cache_name?: string;
        });
        get cache_name(): string;
        set cache_name(value: string);
        static fromObject(data: {
            cache_name?: string;
        }): _FlushCacheRequest;
        toObject(): {
            cache_name?: string;
        };
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _FlushCacheRequest;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _FlushCacheRequest;
    }
    export class _FlushCacheResponse extends pb_1.Message {
        #private;
        constructor(data?: any[] | {});
        static fromObject(data: {}): _FlushCacheResponse;
        toObject(): {};
        serialize(): Uint8Array;
        serialize(w: pb_1.BinaryWriter): void;
        static deserialize(bytes: Uint8Array | pb_1.BinaryReader): _FlushCacheResponse;
        serializeBinary(): Uint8Array;
        static deserializeBinary(bytes: Uint8Array): _FlushCacheResponse;
    }
    interface GrpcUnaryServiceInterface<P, R> {
        (message: P, metadata: grpc_1.Metadata, options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
        (message: P, metadata: grpc_1.Metadata, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
        (message: P, options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
        (message: P, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
    }
    export abstract class UnimplementedScsControlService {
        static definition: {
            CreateCache: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _CreateCacheRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _CreateCacheRequest;
                responseSerialize: (message: _CreateCacheResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _CreateCacheResponse;
            };
            DeleteCache: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _DeleteCacheRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _DeleteCacheRequest;
                responseSerialize: (message: _DeleteCacheResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _DeleteCacheResponse;
            };
            ListCaches: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _ListCachesRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _ListCachesRequest;
                responseSerialize: (message: _ListCachesResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _ListCachesResponse;
            };
            FlushCache: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _FlushCacheRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _FlushCacheRequest;
                responseSerialize: (message: _FlushCacheResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _FlushCacheResponse;
            };
            CreateSigningKey: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _CreateSigningKeyRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _CreateSigningKeyRequest;
                responseSerialize: (message: _CreateSigningKeyResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _CreateSigningKeyResponse;
            };
            RevokeSigningKey: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _RevokeSigningKeyRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _RevokeSigningKeyRequest;
                responseSerialize: (message: _RevokeSigningKeyResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _RevokeSigningKeyResponse;
            };
            ListSigningKeys: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _ListSigningKeysRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _ListSigningKeysRequest;
                responseSerialize: (message: _ListSigningKeysResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _ListSigningKeysResponse;
            };
            CreateIndex: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _CreateIndexRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _CreateIndexRequest;
                responseSerialize: (message: _CreateIndexResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _CreateIndexResponse;
            };
            DeleteIndex: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _DeleteIndexRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _DeleteIndexRequest;
                responseSerialize: (message: _DeleteIndexResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _DeleteIndexResponse;
            };
            ListIndexes: {
                path: string;
                requestStream: boolean;
                responseStream: boolean;
                requestSerialize: (message: _ListIndexesRequest) => Buffer;
                requestDeserialize: (bytes: Buffer) => _ListIndexesRequest;
                responseSerialize: (message: _ListIndexesResponse) => Buffer;
                responseDeserialize: (bytes: Buffer) => _ListIndexesResponse;
            };
        };
        [method: string]: grpc_1.UntypedHandleCall;
        abstract CreateCache(call: grpc_1.ServerUnaryCall<_CreateCacheRequest, _CreateCacheResponse>, callback: grpc_1.sendUnaryData<_CreateCacheResponse>): void;
        abstract DeleteCache(call: grpc_1.ServerUnaryCall<_DeleteCacheRequest, _DeleteCacheResponse>, callback: grpc_1.sendUnaryData<_DeleteCacheResponse>): void;
        abstract ListCaches(call: grpc_1.ServerUnaryCall<_ListCachesRequest, _ListCachesResponse>, callback: grpc_1.sendUnaryData<_ListCachesResponse>): void;
        abstract FlushCache(call: grpc_1.ServerUnaryCall<_FlushCacheRequest, _FlushCacheResponse>, callback: grpc_1.sendUnaryData<_FlushCacheResponse>): void;
        abstract CreateSigningKey(call: grpc_1.ServerUnaryCall<_CreateSigningKeyRequest, _CreateSigningKeyResponse>, callback: grpc_1.sendUnaryData<_CreateSigningKeyResponse>): void;
        abstract RevokeSigningKey(call: grpc_1.ServerUnaryCall<_RevokeSigningKeyRequest, _RevokeSigningKeyResponse>, callback: grpc_1.sendUnaryData<_RevokeSigningKeyResponse>): void;
        abstract ListSigningKeys(call: grpc_1.ServerUnaryCall<_ListSigningKeysRequest, _ListSigningKeysResponse>, callback: grpc_1.sendUnaryData<_ListSigningKeysResponse>): void;
        abstract CreateIndex(call: grpc_1.ServerUnaryCall<_CreateIndexRequest, _CreateIndexResponse>, callback: grpc_1.sendUnaryData<_CreateIndexResponse>): void;
        abstract DeleteIndex(call: grpc_1.ServerUnaryCall<_DeleteIndexRequest, _DeleteIndexResponse>, callback: grpc_1.sendUnaryData<_DeleteIndexResponse>): void;
        abstract ListIndexes(call: grpc_1.ServerUnaryCall<_ListIndexesRequest, _ListIndexesResponse>, callback: grpc_1.sendUnaryData<_ListIndexesResponse>): void;
    }
    const ScsControlClient_base: grpc_1.ServiceClientConstructor;
    export class ScsControlClient extends ScsControlClient_base {
        constructor(address: string, credentials: grpc_1.ChannelCredentials, options?: Partial<grpc_1.ChannelOptions>);
        CreateCache: GrpcUnaryServiceInterface<_CreateCacheRequest, _CreateCacheResponse>;
        DeleteCache: GrpcUnaryServiceInterface<_DeleteCacheRequest, _DeleteCacheResponse>;
        ListCaches: GrpcUnaryServiceInterface<_ListCachesRequest, _ListCachesResponse>;
        FlushCache: GrpcUnaryServiceInterface<_FlushCacheRequest, _FlushCacheResponse>;
        CreateSigningKey: GrpcUnaryServiceInterface<_CreateSigningKeyRequest, _CreateSigningKeyResponse>;
        RevokeSigningKey: GrpcUnaryServiceInterface<_RevokeSigningKeyRequest, _RevokeSigningKeyResponse>;
        ListSigningKeys: GrpcUnaryServiceInterface<_ListSigningKeysRequest, _ListSigningKeysResponse>;
        CreateIndex: GrpcUnaryServiceInterface<_CreateIndexRequest, _CreateIndexResponse>;
        DeleteIndex: GrpcUnaryServiceInterface<_DeleteIndexRequest, _DeleteIndexResponse>;
        ListIndexes: GrpcUnaryServiceInterface<_ListIndexesRequest, _ListIndexesResponse>;
    }
    export {};
}
