import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import type { CallContext, CallOptions } from "nice-grpc-common"; import { Guid } from "./protobuf-net/bcl"; export declare const protobufPackage = "Cratis.Chronicle.Contracts.Recommendations"; export declare enum ValidationResultSeverity { Unknown = 0, Information = 1, Warning = 2, Error = 3, UNRECOGNIZED = -1 } export declare function validationResultSeverityFromJSON(object: any): ValidationResultSeverity; export declare function validationResultSeverityToJSON(object: ValidationResultSeverity): string; export interface AllRecommendationsRequest { EventStore: string; Namespace: string; } export interface CommandResult { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; AuthorizationFailureReason: string; } export interface GetRecommendationsRequest { EventStore: string; Namespace: string; } export interface IgnoreRecommendationRequest { EventStore: string; Namespace: string; RecommendationId: Guid | undefined; } export interface PerformRecommendationRequest { EventStore: string; Namespace: string; RecommendationId: Guid | undefined; } export interface QueryResultIEnumerableRecommendationDetailsResponse { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; Data: RecommendationDetailsResponse[]; } export interface RecommendationDetailsResponse { Id: Guid | undefined; Name: string; Description: string; Type: string; Occurred: SerializableDateTimeOffset | undefined; } export interface SerializableDateTimeOffset { Value: string; } export interface ValidationResult { Severity: ValidationResultSeverity; Message: string; Members: string[]; } export declare const AllRecommendationsRequest: MessageFns; export declare const CommandResult: MessageFns; export declare const GetRecommendationsRequest: MessageFns; export declare const IgnoreRecommendationRequest: MessageFns; export declare const PerformRecommendationRequest: MessageFns; export declare const QueryResultIEnumerableRecommendationDetailsResponse: MessageFns; export declare const RecommendationDetailsResponse: MessageFns; export declare const SerializableDateTimeOffset: MessageFns; export declare const ValidationResult: MessageFns; export type RecommendationsDefinition = typeof RecommendationsDefinition; export declare const RecommendationsDefinition: { readonly name: "Recommendations"; readonly fullName: "Cratis.Chronicle.Contracts.Recommendations.Recommendations"; readonly methods: { readonly allRecommendations: { readonly name: "AllRecommendations"; readonly requestType: typeof AllRecommendationsRequest; readonly requestStream: false; readonly responseType: typeof QueryResultIEnumerableRecommendationDetailsResponse; readonly responseStream: true; readonly options: {}; }; readonly getRecommendations: { readonly name: "GetRecommendations"; readonly requestType: typeof GetRecommendationsRequest; readonly requestStream: false; readonly responseType: typeof QueryResultIEnumerableRecommendationDetailsResponse; readonly responseStream: false; readonly options: {}; }; readonly ignoreRecommendation: { readonly name: "IgnoreRecommendation"; readonly requestType: typeof IgnoreRecommendationRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly performRecommendation: { readonly name: "PerformRecommendation"; readonly requestType: typeof PerformRecommendationRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; }; }; export interface RecommendationsServiceImplementation { allRecommendations(request: AllRecommendationsRequest, context: CallContext & CallContextExt): ServerStreamingMethodResult>; getRecommendations(request: GetRecommendationsRequest, context: CallContext & CallContextExt): Promise>; ignoreRecommendation(request: IgnoreRecommendationRequest, context: CallContext & CallContextExt): Promise>; performRecommendation(request: PerformRecommendationRequest, context: CallContext & CallContextExt): Promise>; } export interface RecommendationsClient { allRecommendations(request: DeepPartial, options?: CallOptions & CallOptionsExt): AsyncIterable; getRecommendations(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; ignoreRecommendation(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; performRecommendation(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; } type Builtin = Date | Function | Uint8Array | string | number | boolean | bigint | undefined; export type DeepPartial = T extends bigint ? string | number | bigint : T extends Builtin ? T : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export type ServerStreamingMethodResult = { [Symbol.asyncIterator](): AsyncIterator; }; export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create(base?: DeepPartial): T; fromPartial(object: DeepPartial): T; } export {}; //# sourceMappingURL=recommendations.d.ts.map