import { type RbacAssignment } from '../../models/redirect/index.js'; import { type RbacItemRequestBuilder } from './item/index.js'; import { type BaseRequestBuilder, type Guid, type KeysToExcludeForNavigationMetadata, type NavigationMetadata, type RequestConfiguration, type RequestInformation, type RequestsMetadata } from '@microsoft/kiota-abstractions'; export type GetAssignmentTargetTypeQueryParameterType = (typeof GetAssignmentTargetTypeQueryParameterTypeObject)[keyof typeof GetAssignmentTargetTypeQueryParameterTypeObject]; export type GetPrincipalTypeQueryParameterType = (typeof GetPrincipalTypeQueryParameterTypeObject)[keyof typeof GetPrincipalTypeQueryParameterTypeObject]; /** * Builds and executes requests for operations under /Api/Rbac */ export interface RbacRequestBuilder extends BaseRequestBuilder { /** * Gets an item from the ApiSdk.Api.Rbac.item collection * @param id Object ID that uniquely identifies the record. * @returns {RbacItemRequestBuilder} */ byId(id: Guid): RbacItemRequestBuilder; /** * Retrieves all RBAC assignment records from the database.This endpoint does not have implicit scope (permission) restrictions but includes an internal check on user's RBAC assignments. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ get(requestConfiguration?: RequestConfiguration | undefined): Promise; /** * Create new RBAC assignment record in the database and returns information enriched with created metadata.This endpoint does not have implicit scope (permission) restrictions but includes an internal check on user's RBAC assignments. * @param body Object representing an RBAC assignment entry to control user's AuthZ abilities when dealing with redirects/domains/banned terms records. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ post(body: RbacAssignment, requestConfiguration?: RequestConfiguration | undefined): Promise; /** * Retrieves all RBAC assignment records from the database.This endpoint does not have implicit scope (permission) restrictions but includes an internal check on user's RBAC assignments. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toGetRequestInformation(requestConfiguration?: RequestConfiguration | undefined): RequestInformation; /** * Create new RBAC assignment record in the database and returns information enriched with created metadata.This endpoint does not have implicit scope (permission) restrictions but includes an internal check on user's RBAC assignments. * @param body Object representing an RBAC assignment entry to control user's AuthZ abilities when dealing with redirects/domains/banned terms records. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toPostRequestInformation(body: RbacAssignment, requestConfiguration?: RequestConfiguration | undefined): RequestInformation; } /** * Retrieves all RBAC assignment records from the database.This endpoint does not have implicit scope (permission) restrictions but includes an internal check on user's RBAC assignments. */ export interface RbacRequestBuilderGetQueryParameters { /** * Filter by the `assignmentTargetType` field. */ assignmentTargetType?: GetAssignmentTargetTypeQueryParameterType; /** * Filter by the `createdAt` field. */ createdAt?: Date; /** * Filter by the `principalId` field. */ principalId?: Guid; /** * Filter by the `principalType` field. */ principalType?: GetPrincipalTypeQueryParameterType; /** * Filter by the `role` field. */ role?: Guid; /** * Filter by the `targetId` field. */ targetId?: Guid; } /** * Uri template for the request builder. */ export declare const RbacRequestBuilderUriTemplate = "{+baseurl}/Api/Rbac{?assignmentTargetType*,createdAt*,principalId*,principalType*,role*,targetId*}"; export declare const GetAssignmentTargetTypeQueryParameterTypeObject: { readonly RedirectConfig: "RedirectConfig"; readonly DomainName: "DomainName"; readonly BannedName: "BannedName"; }; export declare const GetPrincipalTypeQueryParameterTypeObject: { readonly User: "user"; readonly Group: "group"; }; /** * Metadata for all the navigation properties in the request builder. */ export declare const RbacRequestBuilderNavigationMetadata: Record, NavigationMetadata>; /** * Metadata for all the requests in the request builder. */ export declare const RbacRequestBuilderRequestsMetadata: RequestsMetadata;