import * as pulumi from "@pulumi/pulumi";
/**
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as meraki from "@pulumi/meraki";
 *
 * const example = new meraki.devices.CameraQualityAndRetention("example", {
 *     audioRecordingEnabled: false,
 *     motionBasedRetentionEnabled: false,
 *     motionDetectorVersion: 2,
 *     profileId: "1234",
 *     quality: "Standard",
 *     resolution: "1280x720",
 *     restrictedBandwidthModeEnabled: false,
 *     serial: "string",
 * });
 * export const merakiDevicesCameraQualityAndRetentionExample = example;
 * ```
 *
 * ## Import
 *
 * ```sh
 * $ pulumi import meraki:devices/cameraQualityAndRetention:CameraQualityAndRetention example "serial"
 * ```
 */
export declare class CameraQualityAndRetention extends pulumi.CustomResource {
    /**
     * Get an existing CameraQualityAndRetention resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CameraQualityAndRetentionState, opts?: pulumi.CustomResourceOptions): CameraQualityAndRetention;
    /**
     * Returns true if the given object is an instance of CameraQualityAndRetention.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is CameraQualityAndRetention;
    /**
     * Boolean indicating if audio recording is enabled(true) or disabled(false) on the camera
     */
    readonly audioRecordingEnabled: pulumi.Output<boolean>;
    /**
     * Boolean indicating if motion-based retention is enabled(true) or disabled(false) on the camera.
     */
    readonly motionBasedRetentionEnabled: pulumi.Output<boolean>;
    /**
     * The version of the motion detector that will be used by the camera. Only applies to Gen 2 cameras. Defaults to v2.
     */
    readonly motionDetectorVersion: pulumi.Output<number>;
    /**
     * The ID of a quality and retention profile to assign to the camera. The profile's settings will override all of the per-camera quality and retention settings. If the value of this parameter is null, any existing profile will be unassigned from the camera.
     */
    readonly profileId: pulumi.Output<string>;
    /**
     * Quality of the camera. Can be one of 'Standard', 'High' or 'Enhanced'. Not all qualities are supported by every camera model.
     */
    readonly quality: pulumi.Output<string>;
    /**
     * Resolution of the camera. Can be one of '1280x720', '1920x1080', '1080x1080', '2112x2112', '2880x2880', '2688x1512' or '3840x2160'.Not all resolutions are supported by every camera model.
     */
    readonly resolution: pulumi.Output<string>;
    /**
     * Boolean indicating if restricted bandwidth is enabled(true) or disabled(false) on the camera. This setting does not apply to MV2 cameras.
     */
    readonly restrictedBandwidthModeEnabled: pulumi.Output<boolean>;
    /**
     * serial path parameter.
     */
    readonly serial: pulumi.Output<string>;
    /**
     * Create a CameraQualityAndRetention resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: CameraQualityAndRetentionArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering CameraQualityAndRetention resources.
 */
export interface CameraQualityAndRetentionState {
    /**
     * Boolean indicating if audio recording is enabled(true) or disabled(false) on the camera
     */
    audioRecordingEnabled?: pulumi.Input<boolean>;
    /**
     * Boolean indicating if motion-based retention is enabled(true) or disabled(false) on the camera.
     */
    motionBasedRetentionEnabled?: pulumi.Input<boolean>;
    /**
     * The version of the motion detector that will be used by the camera. Only applies to Gen 2 cameras. Defaults to v2.
     */
    motionDetectorVersion?: pulumi.Input<number>;
    /**
     * The ID of a quality and retention profile to assign to the camera. The profile's settings will override all of the per-camera quality and retention settings. If the value of this parameter is null, any existing profile will be unassigned from the camera.
     */
    profileId?: pulumi.Input<string>;
    /**
     * Quality of the camera. Can be one of 'Standard', 'High' or 'Enhanced'. Not all qualities are supported by every camera model.
     */
    quality?: pulumi.Input<string>;
    /**
     * Resolution of the camera. Can be one of '1280x720', '1920x1080', '1080x1080', '2112x2112', '2880x2880', '2688x1512' or '3840x2160'.Not all resolutions are supported by every camera model.
     */
    resolution?: pulumi.Input<string>;
    /**
     * Boolean indicating if restricted bandwidth is enabled(true) or disabled(false) on the camera. This setting does not apply to MV2 cameras.
     */
    restrictedBandwidthModeEnabled?: pulumi.Input<boolean>;
    /**
     * serial path parameter.
     */
    serial?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a CameraQualityAndRetention resource.
 */
export interface CameraQualityAndRetentionArgs {
    /**
     * Boolean indicating if audio recording is enabled(true) or disabled(false) on the camera
     */
    audioRecordingEnabled?: pulumi.Input<boolean>;
    /**
     * Boolean indicating if motion-based retention is enabled(true) or disabled(false) on the camera.
     */
    motionBasedRetentionEnabled?: pulumi.Input<boolean>;
    /**
     * The version of the motion detector that will be used by the camera. Only applies to Gen 2 cameras. Defaults to v2.
     */
    motionDetectorVersion?: pulumi.Input<number>;
    /**
     * The ID of a quality and retention profile to assign to the camera. The profile's settings will override all of the per-camera quality and retention settings. If the value of this parameter is null, any existing profile will be unassigned from the camera.
     */
    profileId?: pulumi.Input<string>;
    /**
     * Quality of the camera. Can be one of 'Standard', 'High' or 'Enhanced'. Not all qualities are supported by every camera model.
     */
    quality?: pulumi.Input<string>;
    /**
     * Resolution of the camera. Can be one of '1280x720', '1920x1080', '1080x1080', '2112x2112', '2880x2880', '2688x1512' or '3840x2160'.Not all resolutions are supported by every camera model.
     */
    resolution?: pulumi.Input<string>;
    /**
     * Boolean indicating if restricted bandwidth is enabled(true) or disabled(false) on the camera. This setting does not apply to MV2 cameras.
     */
    restrictedBandwidthModeEnabled?: pulumi.Input<boolean>;
    /**
     * serial path parameter.
     */
    serial: pulumi.Input<string>;
}
