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 { ConversionActionCategoryEnum_ConversionActionCategory } from "../enums/conversion_action_category";
import { ConversionValueRuleSetStatusEnum_ConversionValueRuleSetStatus } from "../enums/conversion_value_rule_set_status";
import { ValueRuleSetAttachmentTypeEnum_ValueRuleSetAttachmentType } from "../enums/value_rule_set_attachment_type";
import { ValueRuleSetDimensionEnum_ValueRuleSetDimension } from "../enums/value_rule_set_dimension";
/**
 * A conversion value rule set
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.ConversionValueRuleSet
 */
export interface ConversionValueRuleSet {
    /**
     * Immutable. The resource name of the conversion value rule set.
     * Conversion value rule set resource names have the form:
     *
     * `customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Output only. The ID of the conversion value rule set.
     *
     * @generated from protobuf field: int64 id = 2;
     */
    id: bigint;
    /**
     * Resource names of rules within the rule set.
     *
     * @generated from protobuf field: repeated string conversion_value_rules = 3;
     */
    conversionValueRules: string[];
    /**
     * Defines dimensions for Value Rule conditions. The condition types of value
     * rules within this value rule set must be of these dimensions. The first
     * entry in this list is the primary dimension of the included value rules.
     * When using value rule primary dimension segmentation, conversion values
     * will be segmented into the values adjusted by value rules and the original
     * values, if some value rules apply.
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.enums.ValueRuleSetDimensionEnum.ValueRuleSetDimension dimensions = 4;
     */
    dimensions: ValueRuleSetDimensionEnum_ValueRuleSetDimension[];
    /**
     * Output only. The resource name of the conversion value rule set's owner customer.
     * When the value rule set is inherited from a manager
     * customer, owner_customer will be the resource name of the manager whereas
     * the customer in the resource_name will be of the requesting serving
     * customer.
     * ** Read-only **
     *
     * @generated from protobuf field: string owner_customer = 5;
     */
    ownerCustomer: string;
    /**
     * Immutable. Defines the scope where the conversion value rule set is attached.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.ValueRuleSetAttachmentTypeEnum.ValueRuleSetAttachmentType attachment_type = 6;
     */
    attachmentType: ValueRuleSetAttachmentTypeEnum_ValueRuleSetAttachmentType;
    /**
     * The resource name of the campaign when the conversion value rule
     * set is attached to a campaign.
     *
     * @generated from protobuf field: string campaign = 7;
     */
    campaign: string;
    /**
     * Output only. The status of the conversion value rule set.
     * ** Read-only **
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.ConversionValueRuleSetStatusEnum.ConversionValueRuleSetStatus status = 8;
     */
    status: ConversionValueRuleSetStatusEnum_ConversionValueRuleSetStatus;
    /**
     * Immutable. The conversion action categories of the conversion value rule set.
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_categories = 9;
     */
    conversionActionCategories: ConversionActionCategoryEnum_ConversionActionCategory[];
}
declare class ConversionValueRuleSet$Type extends MessageType<ConversionValueRuleSet> {
    constructor();
    create(value?: PartialMessage<ConversionValueRuleSet>): ConversionValueRuleSet;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConversionValueRuleSet): ConversionValueRuleSet;
    internalBinaryWrite(message: ConversionValueRuleSet, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.ConversionValueRuleSet
 */
export declare const ConversionValueRuleSet: ConversionValueRuleSet$Type;
export {};
