import { ServiceType } from '@protobuf-ts/runtime-rpc';
import type { BinaryWriteOptions } from '@protobuf-ts/runtime';
import type { IBinaryWriter } from '@protobuf-ts/runtime';
import type { BinaryReadOptions } from '@protobuf-ts/runtime';
import type { IBinaryReader } from '@protobuf-ts/runtime';
import type { PartialMessage } from '@protobuf-ts/runtime';
import { MessageType } from '@protobuf-ts/runtime';
import { FieldMask } from '../../../../../../google/protobuf/field_mask.js';
import { ObjectMeta } from './object_meta.js';
/**
 * Users are used to dynamically manage the rights given to Daml applications.
 * They are stored and managed per participant node.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.User
 */
export interface User {
    /**
     * The user identifier, which must be a non-empty string of at most 128
     * characters that are either alphanumeric ASCII characters or one of the symbols "@^$.!`-#+'~_|:".
     * Required
     *
     * @generated from protobuf field: string id = 1
     */
    id: string;
    /**
     * The primary party as which this user reads and acts by default on the ledger
     * *provided* it has the corresponding ``CanReadAs(primary_party)`` or
     * ``CanActAs(primary_party)`` rights.
     * Ledger API clients SHOULD set this field to a non-empty value for all users to
     * enable the users to act on the ledger using their own Daml party.
     * Users for participant administrators MAY have an associated primary party.
     * Optional,
     * Modifiable
     *
     * @generated from protobuf field: string primary_party = 2
     */
    primaryParty: string;
    /**
     * When set, then the user is denied all access to the Ledger API.
     * Otherwise, the user has access to the Ledger API as per the user's rights.
     * Optional,
     * Modifiable
     *
     * @generated from protobuf field: bool is_deactivated = 3
     */
    isDeactivated: boolean;
    /**
     * The metadata of this user.
     * Note that the ``metadata.resource_version`` tracks changes to the properties described by the ``User`` message and not the user's rights.
     * Optional,
     * Modifiable
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.ObjectMeta metadata = 4
     */
    metadata?: ObjectMeta;
    /**
     * The ID of the identity provider configured by ``Identity Provider Config``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 5
     */
    identityProviderId: string;
}
/**
 * A right granted to a user.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right
 */
export interface Right {
    /**
     * Required
     *
     * @generated from protobuf oneof: kind
     */
    kind: {
        oneofKind: 'participantAdmin';
        /**
         * The user can administer the participant node.
         *
         * @generated from protobuf field: com.daml.ledger.api.v2.admin.Right.ParticipantAdmin participant_admin = 1
         */
        participantAdmin: Right_ParticipantAdmin;
    } | {
        oneofKind: 'canActAs';
        /**
         * The user can act as a specific party.
         *
         * @generated from protobuf field: com.daml.ledger.api.v2.admin.Right.CanActAs can_act_as = 2
         */
        canActAs: Right_CanActAs;
    } | {
        oneofKind: 'canReadAs';
        /**
         * The user can read ledger data visible to a specific party.
         *
         * @generated from protobuf field: com.daml.ledger.api.v2.admin.Right.CanReadAs can_read_as = 3
         */
        canReadAs: Right_CanReadAs;
    } | {
        oneofKind: 'identityProviderAdmin';
        /**
         * The user can administer users and parties assigned to the same identity provider as the one of the user.
         *
         * @generated from protobuf field: com.daml.ledger.api.v2.admin.Right.IdentityProviderAdmin identity_provider_admin = 4
         */
        identityProviderAdmin: Right_IdentityProviderAdmin;
    } | {
        oneofKind: 'canReadAsAnyParty';
        /**
         * The user can read as any party on a participant
         *
         * @generated from protobuf field: com.daml.ledger.api.v2.admin.Right.CanReadAsAnyParty can_read_as_any_party = 5
         */
        canReadAsAnyParty: Right_CanReadAsAnyParty;
    } | {
        oneofKind: undefined;
    };
}
/**
 * The right to administer the participant node.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right.ParticipantAdmin
 */
export interface Right_ParticipantAdmin {
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right.CanActAs
 */
export interface Right_CanActAs {
    /**
     * The right to authorize commands for this party.
     *
     * @generated from protobuf field: string party = 1
     */
    party: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right.CanReadAs
 */
export interface Right_CanReadAs {
    /**
     * The right to read ledger data visible to this party.
     *
     * @generated from protobuf field: string party = 1
     */
    party: string;
}
/**
 * The right to administer the identity provider that the user is assigned to.
 * It means, being able to manage users and parties that are also assigned
 * to the same identity provider.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right.IdentityProviderAdmin
 */
export interface Right_IdentityProviderAdmin {
}
/**
 * The rights of a participant's super reader. Its utility is predominantly for
 * feeding external tools, such as PQS, continually without the need to change subscriptions
 * as new parties pop in and out of existence.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.Right.CanReadAsAnyParty
 */
export interface Right_CanReadAsAnyParty {
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(user.identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.CreateUserRequest
 */
export interface CreateUserRequest {
    /**
     * The user to create.
     * Required
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.User user = 1
     */
    user?: User;
    /**
     * The rights to be assigned to the user upon creation,
     * which SHOULD include appropriate rights for the ``user.primary_party``.
     * Optional
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right rights = 2
     */
    rights: Right[];
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.CreateUserResponse
 */
export interface CreateUserResponse {
    /**
     * Created user.
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.User user = 1
     */
    user?: User;
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id) OR IsAuthenticatedUser(user_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.GetUserRequest
 */
export interface GetUserRequest {
    /**
     * The user whose data to retrieve.
     * If set to empty string (the default), then the data for the authenticated user will be retrieved.
     * Optional
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 2
     */
    identityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.GetUserResponse
 */
export interface GetUserResponse {
    /**
     * Retrieved user.
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.User user = 1
     */
    user?: User;
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(user.identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.UpdateUserRequest
 */
export interface UpdateUserRequest {
    /**
     * The user to update.
     * Required,
     * Modifiable
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.User user = 1
     */
    user?: User;
    /**
     * An update mask specifies how and which properties of the ``User`` message are to be updated.
     * An update mask consists of a set of update paths.
     * A valid update path points to a field or a subfield relative to the ``User`` message.
     * A valid update mask must:
     *
     * 1. contain at least one update path,
     * 2. contain only valid update paths.
     *
     * Fields that can be updated are marked as ``Modifiable``.
     * An update path can also point to a non-``Modifiable`` fields such as 'id' and 'metadata.resource_version'
     * because they are used:
     *
     * 1. to identify the user resource subject to the update,
     * 2. for concurrent change control.
     *
     * Examples of valid update paths: 'primary_party', 'metadata', 'metadata.annotations'.
     * For additional information see the documentation for standard protobuf3's ``google.protobuf.FieldMask``.
     * For similar Ledger API see ``com.daml.ledger.api.v2.admin.UpdatePartyDetailsRequest``.
     * Required
     *
     * @generated from protobuf field: google.protobuf.FieldMask update_mask = 2
     */
    updateMask?: FieldMask;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.UpdateUserResponse
 */
export interface UpdateUserResponse {
    /**
     * Updated user
     *
     * @generated from protobuf field: com.daml.ledger.api.v2.admin.User user = 1
     */
    user?: User;
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.DeleteUserRequest
 */
export interface DeleteUserRequest {
    /**
     * The user to delete.
     * Required
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 2
     */
    identityProviderId: string;
}
/**
 * Does not (yet) contain any data.
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.DeleteUserResponse
 */
export interface DeleteUserResponse {
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.ListUsersRequest
 */
export interface ListUsersRequest {
    /**
     * Pagination token to determine the specific page to fetch.
     * Leave empty to fetch the first page.
     * Optional
     *
     * @generated from protobuf field: string page_token = 2
     */
    pageToken: string;
    /**
     * Maximum number of results to be returned by the server. The server will return no more than that many results, but it might return fewer.
     * If 0, the server will decide the number of results to be returned.
     * Optional
     *
     * @generated from protobuf field: int32 page_size = 3
     */
    pageSize: number;
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 4
     */
    identityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.ListUsersResponse
 */
export interface ListUsersResponse {
    /**
     * A subset of users of the participant node that fit into this page.
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.User users = 1
     */
    users: User[];
    /**
     * Pagination token to retrieve the next page.
     * Empty, if there are no further results.
     *
     * @generated from protobuf field: string next_page_token = 2
     */
    nextPageToken: string;
}
/**
 * Add the rights to the set of rights granted to the user.
 *
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.GrantUserRightsRequest
 */
export interface GrantUserRightsRequest {
    /**
     * The user to whom to grant rights.
     * Required
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * The rights to grant.
     * Optional
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right rights = 2
     */
    rights: Right[];
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 3
     */
    identityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.GrantUserRightsResponse
 */
export interface GrantUserRightsResponse {
    /**
     * The rights that were newly granted by the request.
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right newly_granted_rights = 1
     */
    newlyGrantedRights: Right[];
}
/**
 * Remove the rights from the set of rights granted to the user.
 *
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.RevokeUserRightsRequest
 */
export interface RevokeUserRightsRequest {
    /**
     * The user from whom to revoke rights.
     * Required
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * The rights to revoke.
     * Optional
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right rights = 2
     */
    rights: Right[];
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 3
     */
    identityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.RevokeUserRightsResponse
 */
export interface RevokeUserRightsResponse {
    /**
     * The rights that were actually revoked by the request.
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right newly_revoked_rights = 1
     */
    newlyRevokedRights: Right[];
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin) OR IsAuthenticatedIdentityProviderAdmin(identity_provider_id) OR IsAuthenticatedUser(user_id)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.ListUserRightsRequest
 */
export interface ListUserRightsRequest {
    /**
     * The user for which to list the rights.
     * If set to empty string (the default), then the rights for the authenticated user will be listed.
     * Required
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * The id of the ``Identity Provider``
     * Optional, if not set, assume the user is managed by the default identity provider.
     *
     * @generated from protobuf field: string identity_provider_id = 2
     */
    identityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.ListUserRightsResponse
 */
export interface ListUserRightsResponse {
    /**
     * All rights of the user.
     *
     * @generated from protobuf field: repeated com.daml.ledger.api.v2.admin.Right rights = 1
     */
    rights: Right[];
}
/**
 * Required authorization: ``HasRight(ParticipantAdmin)``
 *
 * @generated from protobuf message com.daml.ledger.api.v2.admin.UpdateUserIdentityProviderIdRequest
 */
export interface UpdateUserIdentityProviderIdRequest {
    /**
     * User to update
     *
     * @generated from protobuf field: string user_id = 1
     */
    userId: string;
    /**
     * Current identity provider ID of the user
     *
     * @generated from protobuf field: string source_identity_provider_id = 2
     */
    sourceIdentityProviderId: string;
    /**
     * Target identity provider ID of the user
     *
     * @generated from protobuf field: string target_identity_provider_id = 3
     */
    targetIdentityProviderId: string;
}
/**
 * @generated from protobuf message com.daml.ledger.api.v2.admin.UpdateUserIdentityProviderIdResponse
 */
export interface UpdateUserIdentityProviderIdResponse {
}
declare class User$Type extends MessageType<User> {
    constructor();
    create(value?: PartialMessage<User>): User;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: User): User;
    internalBinaryWrite(message: User, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.User
 */
export declare const User: User$Type;
declare class Right$Type extends MessageType<Right> {
    constructor();
    create(value?: PartialMessage<Right>): Right;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right): Right;
    internalBinaryWrite(message: Right, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right
 */
export declare const Right: Right$Type;
declare class Right_ParticipantAdmin$Type extends MessageType<Right_ParticipantAdmin> {
    constructor();
    create(value?: PartialMessage<Right_ParticipantAdmin>): Right_ParticipantAdmin;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right_ParticipantAdmin): Right_ParticipantAdmin;
    internalBinaryWrite(message: Right_ParticipantAdmin, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right.ParticipantAdmin
 */
export declare const Right_ParticipantAdmin: Right_ParticipantAdmin$Type;
declare class Right_CanActAs$Type extends MessageType<Right_CanActAs> {
    constructor();
    create(value?: PartialMessage<Right_CanActAs>): Right_CanActAs;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right_CanActAs): Right_CanActAs;
    internalBinaryWrite(message: Right_CanActAs, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right.CanActAs
 */
export declare const Right_CanActAs: Right_CanActAs$Type;
declare class Right_CanReadAs$Type extends MessageType<Right_CanReadAs> {
    constructor();
    create(value?: PartialMessage<Right_CanReadAs>): Right_CanReadAs;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right_CanReadAs): Right_CanReadAs;
    internalBinaryWrite(message: Right_CanReadAs, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right.CanReadAs
 */
export declare const Right_CanReadAs: Right_CanReadAs$Type;
declare class Right_IdentityProviderAdmin$Type extends MessageType<Right_IdentityProviderAdmin> {
    constructor();
    create(value?: PartialMessage<Right_IdentityProviderAdmin>): Right_IdentityProviderAdmin;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right_IdentityProviderAdmin): Right_IdentityProviderAdmin;
    internalBinaryWrite(message: Right_IdentityProviderAdmin, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right.IdentityProviderAdmin
 */
export declare const Right_IdentityProviderAdmin: Right_IdentityProviderAdmin$Type;
declare class Right_CanReadAsAnyParty$Type extends MessageType<Right_CanReadAsAnyParty> {
    constructor();
    create(value?: PartialMessage<Right_CanReadAsAnyParty>): Right_CanReadAsAnyParty;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Right_CanReadAsAnyParty): Right_CanReadAsAnyParty;
    internalBinaryWrite(message: Right_CanReadAsAnyParty, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.Right.CanReadAsAnyParty
 */
export declare const Right_CanReadAsAnyParty: Right_CanReadAsAnyParty$Type;
declare class CreateUserRequest$Type extends MessageType<CreateUserRequest> {
    constructor();
    create(value?: PartialMessage<CreateUserRequest>): CreateUserRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreateUserRequest): CreateUserRequest;
    internalBinaryWrite(message: CreateUserRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.CreateUserRequest
 */
export declare const CreateUserRequest: CreateUserRequest$Type;
declare class CreateUserResponse$Type extends MessageType<CreateUserResponse> {
    constructor();
    create(value?: PartialMessage<CreateUserResponse>): CreateUserResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreateUserResponse): CreateUserResponse;
    internalBinaryWrite(message: CreateUserResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.CreateUserResponse
 */
export declare const CreateUserResponse: CreateUserResponse$Type;
declare class GetUserRequest$Type extends MessageType<GetUserRequest> {
    constructor();
    create(value?: PartialMessage<GetUserRequest>): GetUserRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetUserRequest): GetUserRequest;
    internalBinaryWrite(message: GetUserRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.GetUserRequest
 */
export declare const GetUserRequest: GetUserRequest$Type;
declare class GetUserResponse$Type extends MessageType<GetUserResponse> {
    constructor();
    create(value?: PartialMessage<GetUserResponse>): GetUserResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetUserResponse): GetUserResponse;
    internalBinaryWrite(message: GetUserResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.GetUserResponse
 */
export declare const GetUserResponse: GetUserResponse$Type;
declare class UpdateUserRequest$Type extends MessageType<UpdateUserRequest> {
    constructor();
    create(value?: PartialMessage<UpdateUserRequest>): UpdateUserRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateUserRequest): UpdateUserRequest;
    internalBinaryWrite(message: UpdateUserRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.UpdateUserRequest
 */
export declare const UpdateUserRequest: UpdateUserRequest$Type;
declare class UpdateUserResponse$Type extends MessageType<UpdateUserResponse> {
    constructor();
    create(value?: PartialMessage<UpdateUserResponse>): UpdateUserResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateUserResponse): UpdateUserResponse;
    internalBinaryWrite(message: UpdateUserResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.UpdateUserResponse
 */
export declare const UpdateUserResponse: UpdateUserResponse$Type;
declare class DeleteUserRequest$Type extends MessageType<DeleteUserRequest> {
    constructor();
    create(value?: PartialMessage<DeleteUserRequest>): DeleteUserRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteUserRequest): DeleteUserRequest;
    internalBinaryWrite(message: DeleteUserRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.DeleteUserRequest
 */
export declare const DeleteUserRequest: DeleteUserRequest$Type;
declare class DeleteUserResponse$Type extends MessageType<DeleteUserResponse> {
    constructor();
    create(value?: PartialMessage<DeleteUserResponse>): DeleteUserResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteUserResponse): DeleteUserResponse;
    internalBinaryWrite(message: DeleteUserResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.DeleteUserResponse
 */
export declare const DeleteUserResponse: DeleteUserResponse$Type;
declare class ListUsersRequest$Type extends MessageType<ListUsersRequest> {
    constructor();
    create(value?: PartialMessage<ListUsersRequest>): ListUsersRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUsersRequest): ListUsersRequest;
    internalBinaryWrite(message: ListUsersRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.ListUsersRequest
 */
export declare const ListUsersRequest: ListUsersRequest$Type;
declare class ListUsersResponse$Type extends MessageType<ListUsersResponse> {
    constructor();
    create(value?: PartialMessage<ListUsersResponse>): ListUsersResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUsersResponse): ListUsersResponse;
    internalBinaryWrite(message: ListUsersResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.ListUsersResponse
 */
export declare const ListUsersResponse: ListUsersResponse$Type;
declare class GrantUserRightsRequest$Type extends MessageType<GrantUserRightsRequest> {
    constructor();
    create(value?: PartialMessage<GrantUserRightsRequest>): GrantUserRightsRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GrantUserRightsRequest): GrantUserRightsRequest;
    internalBinaryWrite(message: GrantUserRightsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.GrantUserRightsRequest
 */
export declare const GrantUserRightsRequest: GrantUserRightsRequest$Type;
declare class GrantUserRightsResponse$Type extends MessageType<GrantUserRightsResponse> {
    constructor();
    create(value?: PartialMessage<GrantUserRightsResponse>): GrantUserRightsResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GrantUserRightsResponse): GrantUserRightsResponse;
    internalBinaryWrite(message: GrantUserRightsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.GrantUserRightsResponse
 */
export declare const GrantUserRightsResponse: GrantUserRightsResponse$Type;
declare class RevokeUserRightsRequest$Type extends MessageType<RevokeUserRightsRequest> {
    constructor();
    create(value?: PartialMessage<RevokeUserRightsRequest>): RevokeUserRightsRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RevokeUserRightsRequest): RevokeUserRightsRequest;
    internalBinaryWrite(message: RevokeUserRightsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.RevokeUserRightsRequest
 */
export declare const RevokeUserRightsRequest: RevokeUserRightsRequest$Type;
declare class RevokeUserRightsResponse$Type extends MessageType<RevokeUserRightsResponse> {
    constructor();
    create(value?: PartialMessage<RevokeUserRightsResponse>): RevokeUserRightsResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RevokeUserRightsResponse): RevokeUserRightsResponse;
    internalBinaryWrite(message: RevokeUserRightsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.RevokeUserRightsResponse
 */
export declare const RevokeUserRightsResponse: RevokeUserRightsResponse$Type;
declare class ListUserRightsRequest$Type extends MessageType<ListUserRightsRequest> {
    constructor();
    create(value?: PartialMessage<ListUserRightsRequest>): ListUserRightsRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUserRightsRequest): ListUserRightsRequest;
    internalBinaryWrite(message: ListUserRightsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.ListUserRightsRequest
 */
export declare const ListUserRightsRequest: ListUserRightsRequest$Type;
declare class ListUserRightsResponse$Type extends MessageType<ListUserRightsResponse> {
    constructor();
    create(value?: PartialMessage<ListUserRightsResponse>): ListUserRightsResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUserRightsResponse): ListUserRightsResponse;
    internalBinaryWrite(message: ListUserRightsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.ListUserRightsResponse
 */
export declare const ListUserRightsResponse: ListUserRightsResponse$Type;
declare class UpdateUserIdentityProviderIdRequest$Type extends MessageType<UpdateUserIdentityProviderIdRequest> {
    constructor();
    create(value?: PartialMessage<UpdateUserIdentityProviderIdRequest>): UpdateUserIdentityProviderIdRequest;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateUserIdentityProviderIdRequest): UpdateUserIdentityProviderIdRequest;
    internalBinaryWrite(message: UpdateUserIdentityProviderIdRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.UpdateUserIdentityProviderIdRequest
 */
export declare const UpdateUserIdentityProviderIdRequest: UpdateUserIdentityProviderIdRequest$Type;
declare class UpdateUserIdentityProviderIdResponse$Type extends MessageType<UpdateUserIdentityProviderIdResponse> {
    constructor();
    create(value?: PartialMessage<UpdateUserIdentityProviderIdResponse>): UpdateUserIdentityProviderIdResponse;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateUserIdentityProviderIdResponse): UpdateUserIdentityProviderIdResponse;
    internalBinaryWrite(message: UpdateUserIdentityProviderIdResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message com.daml.ledger.api.v2.admin.UpdateUserIdentityProviderIdResponse
 */
export declare const UpdateUserIdentityProviderIdResponse: UpdateUserIdentityProviderIdResponse$Type;
/**
 * @generated ServiceType for protobuf service com.daml.ledger.api.v2.admin.UserManagementService
 */
export declare const UserManagementService: ServiceType;
export {};
//# sourceMappingURL=user_management_service.d.ts.map