import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import Long from "long"; import { User } from "../../authorization/v2beta/authorization.js"; import { IDFilter, InIDsFilter, TextFilterMethod } from "../../filter/v2/filter.js"; export declare const protobufPackage = "zitadel.group.v2"; export declare enum FieldName { FIELD_NAME_UNSPECIFIED = 0, FIELD_NAME_ID = 1, FIELD_NAME_NAME = 2, FIELD_NAME_CREATION_DATE = 3, FIELD_NAME_CHANGE_DATE = 4, UNRECOGNIZED = -1 } export declare function fieldNameFromJSON(object: any): FieldName; export declare function fieldNameToJSON(object: FieldName): string; export declare enum GroupUserFieldName { GROUP_USER_FIELD_NAME_UNSPECIFIED = 0, GROUP_USER_FIELD_NAME_USER_ID = 1, GROUP_USER_FIELD_NAME_GROUP_ID = 2, GROUP_USER_FIELD_NAME_CREATION_DATE = 3, UNRECOGNIZED = -1 } export declare function groupUserFieldNameFromJSON(object: any): GroupUserFieldName; export declare function groupUserFieldNameToJSON(object: GroupUserFieldName): string; export interface Group { /** Unique identifier of the user group. */ id: string; /** Unique name of the user group inside the corresponding organization. */ name: string; /** Description the user group. */ description: string; /** The ID of the organization to which the group belongs. */ organizationId: string; /** Timestamp when the group was last changed. */ changeDate: Date | undefined; /** Timestamp when the user group was created */ creationDate: Date | undefined; } export interface GroupUser { /** GroupID is the unique identifier of the user group. */ groupId: string; /** OrganizationID is the unique identifier of the organization to which the group belongs. */ organizationId: string; /** User represents the user in the user group. */ user: User | undefined; /** CreationDate is the timestamp when the user was added to the group. */ creationDate: Date | undefined; } export interface GroupsSearchFilter { /** Search for groups by their IDs. */ groupIds?: InIDsFilter | undefined; /** Search for groups by their names. */ nameFilter?: GroupNameFilter | undefined; /** Search for groups by their organization ID. */ organizationId?: IDFilter | undefined; } export interface GroupNameFilter { /** Name of the user group. */ name: string; /** Defines which text comparison method used for the name query. */ method: TextFilterMethod; } export interface GroupUsersSearchFilter { /** Search for groups by user IDs */ userIds?: InIDsFilter | undefined; /** Search for users in groups by group IDs */ groupIds?: InIDsFilter | undefined; } export declare const Group: MessageFns; export declare const GroupUser: MessageFns; export declare const GroupsSearchFilter: MessageFns; export declare const GroupNameFilter: MessageFns; export declare const GroupUsersSearchFilter: MessageFns; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Long ? string | number | Long : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; 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 {};