import _m0 from 'protobufjs/minimal';
export declare const protobufPackage = "yandex.cloud.speechsense.v1.analysis";
export interface TextClassifiers {
    classificationResult: ClassificationResult[];
}
export interface ClassificationResult {
    /** Classifier name */
    classifier: string;
    /** Classifier statistics */
    classifierStatistics: ClassifierStatistics[];
}
export interface ClassifierStatistics {
    /** Channel number, null for whole talk */
    channelNumber?: number;
    /** classifier total count */
    totalCount: number;
    /** Represents various histograms build on top of classifiers */
    histograms: Histogram[];
}
export interface Histogram {
    /**
     * histogram count values. For example:
     * if len(count_values) = 2, it means that histogram is 50/50,
     * if len(count_values) = 3 - [0] value represents first third, [1] - second third, [2] - last third, etc.
     */
    countValues: number[];
}
export declare const TextClassifiers: {
    encode(message: TextClassifiers, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): TextClassifiers;
    fromJSON(object: any): TextClassifiers;
    toJSON(message: TextClassifiers): unknown;
    fromPartial<I extends {
        classificationResult?: {
            classifier?: string | undefined;
            classifierStatistics?: {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[] | undefined;
        }[] | undefined;
    } & {
        classificationResult?: ({
            classifier?: string | undefined;
            classifierStatistics?: {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[] | undefined;
        }[] & ({
            classifier?: string | undefined;
            classifierStatistics?: {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[] | undefined;
        } & {
            classifier?: string | undefined;
            classifierStatistics?: ({
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[] & ({
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            } & {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: ({
                    countValues?: number[] | undefined;
                }[] & ({
                    countValues?: number[] | undefined;
                } & {
                    countValues?: (number[] & number[] & Record<Exclude<keyof I["classificationResult"][number]["classifierStatistics"][number]["histograms"][number]["countValues"], keyof number[]>, never>) | undefined;
                } & Record<Exclude<keyof I["classificationResult"][number]["classifierStatistics"][number]["histograms"][number], "countValues">, never>)[] & Record<Exclude<keyof I["classificationResult"][number]["classifierStatistics"][number]["histograms"], keyof {
                    countValues?: number[] | undefined;
                }[]>, never>) | undefined;
            } & Record<Exclude<keyof I["classificationResult"][number]["classifierStatistics"][number], keyof ClassifierStatistics>, never>)[] & Record<Exclude<keyof I["classificationResult"][number]["classifierStatistics"], keyof {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[]>, never>) | undefined;
        } & Record<Exclude<keyof I["classificationResult"][number], keyof ClassificationResult>, never>)[] & Record<Exclude<keyof I["classificationResult"], keyof {
            classifier?: string | undefined;
            classifierStatistics?: {
                channelNumber?: number | undefined;
                totalCount?: number | undefined;
                histograms?: {
                    countValues?: number[] | undefined;
                }[] | undefined;
            }[] | undefined;
        }[]>, never>) | undefined;
    } & Record<Exclude<keyof I, "classificationResult">, never>>(object: I): TextClassifiers;
};
export declare const ClassificationResult: {
    encode(message: ClassificationResult, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ClassificationResult;
    fromJSON(object: any): ClassificationResult;
    toJSON(message: ClassificationResult): unknown;
    fromPartial<I extends {
        classifier?: string | undefined;
        classifierStatistics?: {
            channelNumber?: number | undefined;
            totalCount?: number | undefined;
            histograms?: {
                countValues?: number[] | undefined;
            }[] | undefined;
        }[] | undefined;
    } & {
        classifier?: string | undefined;
        classifierStatistics?: ({
            channelNumber?: number | undefined;
            totalCount?: number | undefined;
            histograms?: {
                countValues?: number[] | undefined;
            }[] | undefined;
        }[] & ({
            channelNumber?: number | undefined;
            totalCount?: number | undefined;
            histograms?: {
                countValues?: number[] | undefined;
            }[] | undefined;
        } & {
            channelNumber?: number | undefined;
            totalCount?: number | undefined;
            histograms?: ({
                countValues?: number[] | undefined;
            }[] & ({
                countValues?: number[] | undefined;
            } & {
                countValues?: (number[] & number[] & Record<Exclude<keyof I["classifierStatistics"][number]["histograms"][number]["countValues"], keyof number[]>, never>) | undefined;
            } & Record<Exclude<keyof I["classifierStatistics"][number]["histograms"][number], "countValues">, never>)[] & Record<Exclude<keyof I["classifierStatistics"][number]["histograms"], keyof {
                countValues?: number[] | undefined;
            }[]>, never>) | undefined;
        } & Record<Exclude<keyof I["classifierStatistics"][number], keyof ClassifierStatistics>, never>)[] & Record<Exclude<keyof I["classifierStatistics"], keyof {
            channelNumber?: number | undefined;
            totalCount?: number | undefined;
            histograms?: {
                countValues?: number[] | undefined;
            }[] | undefined;
        }[]>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof ClassificationResult>, never>>(object: I): ClassificationResult;
};
export declare const ClassifierStatistics: {
    encode(message: ClassifierStatistics, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ClassifierStatistics;
    fromJSON(object: any): ClassifierStatistics;
    toJSON(message: ClassifierStatistics): unknown;
    fromPartial<I extends {
        channelNumber?: number | undefined;
        totalCount?: number | undefined;
        histograms?: {
            countValues?: number[] | undefined;
        }[] | undefined;
    } & {
        channelNumber?: number | undefined;
        totalCount?: number | undefined;
        histograms?: ({
            countValues?: number[] | undefined;
        }[] & ({
            countValues?: number[] | undefined;
        } & {
            countValues?: (number[] & number[] & Record<Exclude<keyof I["histograms"][number]["countValues"], keyof number[]>, never>) | undefined;
        } & Record<Exclude<keyof I["histograms"][number], "countValues">, never>)[] & Record<Exclude<keyof I["histograms"], keyof {
            countValues?: number[] | undefined;
        }[]>, never>) | undefined;
    } & Record<Exclude<keyof I, keyof ClassifierStatistics>, never>>(object: I): ClassifierStatistics;
};
export declare const Histogram: {
    encode(message: Histogram, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): Histogram;
    fromJSON(object: any): Histogram;
    toJSON(message: Histogram): unknown;
    fromPartial<I extends {
        countValues?: number[] | undefined;
    } & {
        countValues?: (number[] & number[] & Record<Exclude<keyof I["countValues"], keyof number[]>, never>) | undefined;
    } & Record<Exclude<keyof I, "countValues">, never>>(object: I): Histogram;
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export 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 {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
type KeysOfUnion<T> = T extends T ? keyof T : never;
export type Exact<P, I extends P> = P extends Builtin ? P : P & {
    [K in keyof P]: Exact<P[K], I[K]>;
} & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;
export {};
