import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import type { CallContext, CallOptions } from "nice-grpc-common"; import { Empty } from "./google/protobuf/empty"; import { Guid } from "./protobuf-net/bcl"; export declare const protobufPackage = "Cratis.Chronicle.Contracts.Security"; 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 AddApplicationRequest { Id: Guid | undefined; ClientId: string; ClientSecret: string; } export interface AddUserRequest { UserId: Guid | undefined; Username: string; Email: string; Password: string; } export interface AdminPasswordStatusResponse { IsRequired: boolean; AdminUserId: Guid | undefined; AdminUsername: string; } export interface ApplicationResponse { Id: Guid | undefined; ClientId: string; IsActive: boolean; CreatedAt: SerializableDateTimeOffset | undefined; LastModifiedAt: SerializableDateTimeOffset | undefined; } export interface ChangeApplicationSecretRequest { Id: Guid | undefined; ClientSecret: string; } export interface ChangeUserPasswordRequest { UserId: Guid | undefined; OldPassword: string; Password: string; ConfirmedPassword: string; } export interface CommandResult { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; AuthorizationFailureReason: string; } export interface QueryResultAdminPasswordStatusResponse { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; Data: AdminPasswordStatusResponse | undefined; } export interface QueryResultIEnumerableApplicationResponse { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; Data: ApplicationResponse[]; } export interface QueryResultIEnumerableUserResponse { CorrelationId: Guid | undefined; IsAuthorized: boolean; ValidationResults: ValidationResult[]; ExceptionMessages: string[]; ExceptionStackTrace: string; Data: UserResponse[]; } export interface RemoveApplicationRequest { Id: Guid | undefined; } export interface RemoveUserRequest { UserId: Guid | undefined; } export interface RequirePasswordChangeRequest { UserId: Guid | undefined; } export interface SerializableDateTimeOffset { Value: string; } export interface SetInitialAdminPasswordRequest { UserId: Guid | undefined; Password: string; ConfirmedPassword: string; } export interface UserResponse { Id: Guid | undefined; Username: string; Email: string; IsActive: boolean; CreatedAt: SerializableDateTimeOffset | undefined; LastModifiedAt: SerializableDateTimeOffset | undefined; HasLoggedIn: boolean; } export interface ValidationResult { Severity: ValidationResultSeverity; Message: string; Members: string[]; } export declare const AddApplicationRequest: MessageFns; export declare const AddUserRequest: MessageFns; export declare const AdminPasswordStatusResponse: MessageFns; export declare const ApplicationResponse: MessageFns; export declare const ChangeApplicationSecretRequest: MessageFns; export declare const ChangeUserPasswordRequest: MessageFns; export declare const CommandResult: MessageFns; export declare const QueryResultAdminPasswordStatusResponse: MessageFns; export declare const QueryResultIEnumerableApplicationResponse: MessageFns; export declare const QueryResultIEnumerableUserResponse: MessageFns; export declare const RemoveApplicationRequest: MessageFns; export declare const RemoveUserRequest: MessageFns; export declare const RequirePasswordChangeRequest: MessageFns; export declare const SerializableDateTimeOffset: MessageFns; export declare const SetInitialAdminPasswordRequest: MessageFns; export declare const UserResponse: MessageFns; export declare const ValidationResult: MessageFns; export type ApplicationsDefinition = typeof ApplicationsDefinition; export declare const ApplicationsDefinition: { readonly name: "Applications"; readonly fullName: "Cratis.Chronicle.Contracts.Security.Applications"; readonly methods: { readonly addApplication: { readonly name: "AddApplication"; readonly requestType: typeof AddApplicationRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly allApplications: { readonly name: "AllApplications"; readonly requestType: typeof Empty; readonly requestStream: false; readonly responseType: typeof QueryResultIEnumerableApplicationResponse; readonly responseStream: true; readonly options: {}; }; readonly changeApplicationSecret: { readonly name: "ChangeApplicationSecret"; readonly requestType: typeof ChangeApplicationSecretRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly removeApplication: { readonly name: "RemoveApplication"; readonly requestType: typeof RemoveApplicationRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; }; }; export interface ApplicationsServiceImplementation { addApplication(request: AddApplicationRequest, context: CallContext & CallContextExt): Promise>; allApplications(request: Empty, context: CallContext & CallContextExt): ServerStreamingMethodResult>; changeApplicationSecret(request: ChangeApplicationSecretRequest, context: CallContext & CallContextExt): Promise>; removeApplication(request: RemoveApplicationRequest, context: CallContext & CallContextExt): Promise>; } export interface ApplicationsClient { addApplication(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; allApplications(request: DeepPartial, options?: CallOptions & CallOptionsExt): AsyncIterable; changeApplicationSecret(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; removeApplication(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; } export type UsersDefinition = typeof UsersDefinition; export declare const UsersDefinition: { readonly name: "Users"; readonly fullName: "Cratis.Chronicle.Contracts.Security.Users"; readonly methods: { readonly addUser: { readonly name: "AddUser"; readonly requestType: typeof AddUserRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly allUsers: { readonly name: "AllUsers"; readonly requestType: typeof Empty; readonly requestStream: false; readonly responseType: typeof QueryResultIEnumerableUserResponse; readonly responseStream: true; readonly options: {}; }; readonly changeUserPassword: { readonly name: "ChangeUserPassword"; readonly requestType: typeof ChangeUserPasswordRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly getStatus: { readonly name: "GetStatus"; readonly requestType: typeof Empty; readonly requestStream: false; readonly responseType: typeof QueryResultAdminPasswordStatusResponse; readonly responseStream: false; readonly options: {}; }; readonly removeUser: { readonly name: "RemoveUser"; readonly requestType: typeof RemoveUserRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly requirePasswordChange: { readonly name: "RequirePasswordChange"; readonly requestType: typeof RequirePasswordChangeRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; readonly setInitialAdminPassword: { readonly name: "SetInitialAdminPassword"; readonly requestType: typeof SetInitialAdminPasswordRequest; readonly requestStream: false; readonly responseType: typeof CommandResult; readonly responseStream: false; readonly options: {}; }; }; }; export interface UsersServiceImplementation { addUser(request: AddUserRequest, context: CallContext & CallContextExt): Promise>; allUsers(request: Empty, context: CallContext & CallContextExt): ServerStreamingMethodResult>; changeUserPassword(request: ChangeUserPasswordRequest, context: CallContext & CallContextExt): Promise>; getStatus(request: Empty, context: CallContext & CallContextExt): Promise>; removeUser(request: RemoveUserRequest, context: CallContext & CallContextExt): Promise>; requirePasswordChange(request: RequirePasswordChangeRequest, context: CallContext & CallContextExt): Promise>; setInitialAdminPassword(request: SetInitialAdminPasswordRequest, context: CallContext & CallContextExt): Promise>; } export interface UsersClient { addUser(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; allUsers(request: DeepPartial, options?: CallOptions & CallOptionsExt): AsyncIterable; changeUserPassword(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; getStatus(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; removeUser(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; requirePasswordChange(request: DeepPartial, options?: CallOptions & CallOptionsExt): Promise; setInitialAdminPassword(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=security.d.ts.map