import { type CloudCertificationAuthority } from '@microsoft/msgraph-beta-sdk/models/index.js';
import { type ChangeCloudCertificationAuthorityStatusRequestBuilder } from './changeCloudCertificationAuthorityStatus/index.js';
import { type CloudCertificationAuthorityLeafCertificateRequestBuilder } from './cloudCertificationAuthorityLeafCertificate/index.js';
import { type GetAllCloudCertificationAuthorityRequestBuilder } from './getAllCloudCertificationAuthority/index.js';
import { type GetAllCloudCertificationAuthorityLeafCertificatesRequestBuilder } from './getAllCloudCertificationAuthorityLeafCertificates/index.js';
import { type GetCloudCertificationAuthorityRequestBuilder } from './getCloudCertificationAuthority/index.js';
import { type PatchCloudCertificationAuthorityRequestBuilder } from './patchCloudCertificationAuthority/index.js';
import { type PostCloudCertificationAuthorityRequestBuilder } from './postCloudCertificationAuthority/index.js';
import { type RevokeCloudCertificationAuthorityCertificateRequestBuilder } from './revokeCloudCertificationAuthorityCertificate/index.js';
import { type RevokeLeafCertificateRequestBuilder } from './revokeLeafCertificate/index.js';
import { type RevokeLeafCertificateBySerialNumberRequestBuilder } from './revokeLeafCertificateBySerialNumber/index.js';
import { type SearchCloudCertificationAuthorityLeafCertificateBySerialNumberRequestBuilder } from './searchCloudCertificationAuthorityLeafCertificateBySerialNumber/index.js';
import { type UploadExternallySignedCertificationAuthorityCertificateRequestBuilder } from './uploadExternallySignedCertificationAuthorityCertificate/index.js';
import { type BaseRequestBuilder, type KeysToExcludeForNavigationMetadata, type NavigationMetadata, type RequestConfiguration, type RequestInformation, type RequestsMetadata } from '@microsoft/kiota-abstractions';
/**
 * Provides operations to manage the cloudCertificationAuthority property of the microsoft.graph.deviceManagement entity.
 */
export interface CloudCertificationAuthorityItemRequestBuilder extends BaseRequestBuilder<CloudCertificationAuthorityItemRequestBuilder> {
    /**
     * Provides operations to call the changeCloudCertificationAuthorityStatus method.
     */
    get changeCloudCertificationAuthorityStatus(): ChangeCloudCertificationAuthorityStatusRequestBuilder;
    /**
     * Provides operations to manage the cloudCertificationAuthorityLeafCertificate property of the microsoft.graph.cloudCertificationAuthority entity.
     */
    get cloudCertificationAuthorityLeafCertificate(): CloudCertificationAuthorityLeafCertificateRequestBuilder;
    /**
     * Provides operations to call the getAllCloudCertificationAuthority method.
     */
    get getAllCloudCertificationAuthority(): GetAllCloudCertificationAuthorityRequestBuilder;
    /**
     * Provides operations to call the getAllCloudCertificationAuthorityLeafCertificates method.
     */
    get getAllCloudCertificationAuthorityLeafCertificates(): GetAllCloudCertificationAuthorityLeafCertificatesRequestBuilder;
    /**
     * Provides operations to call the getCloudCertificationAuthority method.
     */
    get getCloudCertificationAuthority(): GetCloudCertificationAuthorityRequestBuilder;
    /**
     * Provides operations to call the patchCloudCertificationAuthority method.
     */
    get patchCloudCertificationAuthority(): PatchCloudCertificationAuthorityRequestBuilder;
    /**
     * Provides operations to call the postCloudCertificationAuthority method.
     */
    get postCloudCertificationAuthority(): PostCloudCertificationAuthorityRequestBuilder;
    /**
     * Provides operations to call the revokeCloudCertificationAuthorityCertificate method.
     */
    get revokeCloudCertificationAuthorityCertificate(): RevokeCloudCertificationAuthorityCertificateRequestBuilder;
    /**
     * Provides operations to call the revokeLeafCertificate method.
     */
    get revokeLeafCertificate(): RevokeLeafCertificateRequestBuilder;
    /**
     * Provides operations to call the revokeLeafCertificateBySerialNumber method.
     */
    get revokeLeafCertificateBySerialNumber(): RevokeLeafCertificateBySerialNumberRequestBuilder;
    /**
     * Provides operations to call the searchCloudCertificationAuthorityLeafCertificateBySerialNumber method.
     */
    get searchCloudCertificationAuthorityLeafCertificateBySerialNumber(): SearchCloudCertificationAuthorityLeafCertificateBySerialNumberRequestBuilder;
    /**
     * Provides operations to call the uploadExternallySignedCertificationAuthorityCertificate method.
     */
    get uploadExternallySignedCertificationAuthorityCertificate(): UploadExternallySignedCertificationAuthorityCertificateRequestBuilder;
    /**
     * Delete navigation property cloudCertificationAuthority for deviceManagement
     * @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>;
    /**
     * Collection of CloudCertificationAuthority records associated with account.
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {Promise<CloudCertificationAuthority>}
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     */
    get(requestConfiguration?: RequestConfiguration<CloudCertificationAuthorityItemRequestBuilderGetQueryParameters> | undefined): Promise<CloudCertificationAuthority | undefined>;
    /**
     * Update the navigation property cloudCertificationAuthority in deviceManagement
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {Promise<CloudCertificationAuthority>}
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     */
    patch(body: CloudCertificationAuthority, requestConfiguration?: RequestConfiguration<object> | undefined): Promise<CloudCertificationAuthority | undefined>;
    /**
     * Delete navigation property cloudCertificationAuthority for deviceManagement
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toDeleteRequestInformation(requestConfiguration?: RequestConfiguration<object> | undefined): RequestInformation;
    /**
     * Collection of CloudCertificationAuthority records associated with account.
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toGetRequestInformation(requestConfiguration?: RequestConfiguration<CloudCertificationAuthorityItemRequestBuilderGetQueryParameters> | undefined): RequestInformation;
    /**
     * Update the navigation property cloudCertificationAuthority in deviceManagement
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toPatchRequestInformation(body: CloudCertificationAuthority, requestConfiguration?: RequestConfiguration<object> | undefined): RequestInformation;
}
/**
 * Collection of CloudCertificationAuthority records associated with account.
 */
export interface CloudCertificationAuthorityItemRequestBuilderGetQueryParameters {
    /**
     * Expand related entities
     */
    expand?: string[];
    /**
     * Select properties to be returned
     */
    select?: string[];
}
/**
 * Uri template for the request builder.
 */
export declare const CloudCertificationAuthorityItemRequestBuilderUriTemplate = "{+baseurl}/deviceManagement/cloudCertificationAuthority/{cloudCertificationAuthority%2Did}{?%24expand,%24select}";
/**
 * Metadata for all the navigation properties in the request builder.
 */
export declare const CloudCertificationAuthorityItemRequestBuilderNavigationMetadata: Record<Exclude<keyof CloudCertificationAuthorityItemRequestBuilder, KeysToExcludeForNavigationMetadata>, NavigationMetadata>;
/**
 * Metadata for all the requests in the request builder.
 */
export declare const CloudCertificationAuthorityItemRequestBuilderRequestsMetadata: RequestsMetadata;
//# sourceMappingURL=index.d.ts.map