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 { PolicySummary } from "../common/policy_summary";
import { AssetPerformanceLabelEnum_AssetPerformanceLabel } from "../enums/asset_performance_label";
import { AssetLinkStatusEnum_AssetLinkStatus } from "../enums/asset_link_status";
import { AssetFieldTypeEnum_AssetFieldType } from "../enums/asset_field_type";
/**
 * AssetGroupAsset is the link between an asset and an asset group.
 * Adding an AssetGroupAsset links an asset with an asset group.
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.AssetGroupAsset
 */
export interface AssetGroupAsset {
    /**
     * Immutable. The resource name of the asset group asset.
     * Asset group asset resource name have the form:
     *
     * `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Immutable. The asset group which this asset group asset is linking.
     *
     * @generated from protobuf field: string asset_group = 2;
     */
    assetGroup: string;
    /**
     * Immutable. The asset which this asset group asset is linking.
     *
     * @generated from protobuf field: string asset = 3;
     */
    asset: string;
    /**
     * The description of the placement of the asset within the asset group. For
     * example: HEADLINE, YOUTUBE_VIDEO etc
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4;
     */
    fieldType: AssetFieldTypeEnum_AssetFieldType;
    /**
     * The status of the link between an asset and asset group.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5;
     */
    status: AssetLinkStatusEnum_AssetLinkStatus;
    /**
     * Output only. The performance of this asset group asset.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 6;
     */
    performanceLabel: AssetPerformanceLabelEnum_AssetPerformanceLabel;
    /**
     * Output only. The policy information for this asset group asset.
     *
     * @generated from protobuf field: google.ads.googleads.v11.common.PolicySummary policy_summary = 7;
     */
    policySummary?: PolicySummary;
}
declare class AssetGroupAsset$Type extends MessageType<AssetGroupAsset> {
    constructor();
    create(value?: PartialMessage<AssetGroupAsset>): AssetGroupAsset;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AssetGroupAsset): AssetGroupAsset;
    internalBinaryWrite(message: AssetGroupAsset, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.AssetGroupAsset
 */
export declare const AssetGroupAsset: AssetGroupAsset$Type;
export {};
