import { type InformationProtectionPolicySetting } from '@microsoft/msgraph-beta-sdk/models/security/';
import { type BaseRequestBuilder, type RequestConfiguration, type RequestInformation, type RequestsMetadata } from '@microsoft/kiota-abstractions';
/**
 * Provides operations to manage the labelPolicySettings property of the microsoft.graph.security.informationProtection entity.
 */
export interface LabelPolicySettingsRequestBuilder extends BaseRequestBuilder<LabelPolicySettingsRequestBuilder> {
    /**
     * Delete navigation property labelPolicySettings for users
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     */
    delete(requestConfiguration?: RequestConfiguration<object> | undefined): Promise<void>;
    /**
     * Read the properties and relationships of an informationProtectionPolicySetting object. The settings exposed by this API should be used in applications to populate the moreInfoUrl property for Microsoft Purview Information Protection help, and indicate whether labeling is mandatory for the user and whether justification must be provided on downgrade.
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {Promise<InformationProtectionPolicySetting>}
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     * @see {@link https://learn.microsoft.com/graph/api/security-informationprotectionpolicysetting-get?view=graph-rest-1.0|Find more info here}
     */
    get(requestConfiguration?: RequestConfiguration<LabelPolicySettingsRequestBuilderGetQueryParameters> | undefined): Promise<InformationProtectionPolicySetting | undefined>;
    /**
     * Update the navigation property labelPolicySettings in users
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {Promise<InformationProtectionPolicySetting>}
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     */
    patch(body: InformationProtectionPolicySetting, requestConfiguration?: RequestConfiguration<object> | undefined): Promise<InformationProtectionPolicySetting | undefined>;
    /**
     * Delete navigation property labelPolicySettings for users
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toDeleteRequestInformation(requestConfiguration?: RequestConfiguration<object> | undefined): RequestInformation;
    /**
     * Read the properties and relationships of an informationProtectionPolicySetting object. The settings exposed by this API should be used in applications to populate the moreInfoUrl property for Microsoft Purview Information Protection help, and indicate whether labeling is mandatory for the user and whether justification must be provided on downgrade.
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toGetRequestInformation(requestConfiguration?: RequestConfiguration<LabelPolicySettingsRequestBuilderGetQueryParameters> | undefined): RequestInformation;
    /**
     * Update the navigation property labelPolicySettings in users
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toPatchRequestInformation(body: InformationProtectionPolicySetting, requestConfiguration?: RequestConfiguration<object> | undefined): RequestInformation;
}
/**
 * Read the properties and relationships of an informationProtectionPolicySetting object. The settings exposed by this API should be used in applications to populate the moreInfoUrl property for Microsoft Purview Information Protection help, and indicate whether labeling is mandatory for the user and whether justification must be provided on downgrade.
 */
export interface LabelPolicySettingsRequestBuilderGetQueryParameters {
    /**
     * Expand related entities
     */
    expand?: string[];
    /**
     * Select properties to be returned
     */
    select?: string[];
}
/**
 * Uri template for the request builder.
 */
export declare const LabelPolicySettingsRequestBuilderUriTemplate = "{+baseurl}/users/{user%2Did}/security/informationProtection/labelPolicySettings{?%24expand,%24select}";
/**
 * Metadata for all the requests in the request builder.
 */
export declare const LabelPolicySettingsRequestBuilderRequestsMetadata: RequestsMetadata;
//# sourceMappingURL=index.d.ts.map