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 { PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum_PolicyTopicEvidenceDestinationNotWorkingDnsErrorType } from "../enums/policy_topic_evidence_destination_not_working_dns_error_type";
import { PolicyTopicEvidenceDestinationNotWorkingDeviceEnum_PolicyTopicEvidenceDestinationNotWorkingDevice } from "../enums/policy_topic_evidence_destination_not_working_device";
import { PolicyTopicEvidenceDestinationMismatchUrlTypeEnum_PolicyTopicEvidenceDestinationMismatchUrlType } from "../enums/policy_topic_evidence_destination_mismatch_url_type";
import { PolicyTopicEntryTypeEnum_PolicyTopicEntryType } from "../enums/policy_topic_entry_type";
/**
 * Key of the violation. The key is used for referring to a violation
 * when filing an exemption request.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyViolationKey
 */
export interface PolicyViolationKey {
    /**
     * Unique ID of the violated policy.
     *
     * @generated from protobuf field: optional string policy_name = 3;
     */
    policyName?: string;
    /**
     * The text that violates the policy if specified.
     * Otherwise, refers to the policy in general
     * (for example, when requesting to be exempt from the whole policy).
     * If not specified for criterion exemptions, the whole policy is implied.
     * Must be specified for ad exemptions.
     *
     * @generated from protobuf field: optional string violating_text = 4;
     */
    violatingText?: string;
}
/**
 * Parameter for controlling how policy exemption is done.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyValidationParameter
 */
export interface PolicyValidationParameter {
    /**
     * The list of policy topics that should not cause a PolicyFindingError to
     * be reported. This field is currently only compatible with Enhanced Text Ad.
     * It corresponds to the PolicyTopicEntry.topic field.
     *
     * Resources violating these policies will be saved, but will not be eligible
     * to serve. They may begin serving at a later time due to a change in
     * policies, re-review of the resource, or a change in advertiser
     * certificates.
     *
     * @generated from protobuf field: repeated string ignorable_policy_topics = 3;
     */
    ignorablePolicyTopics: string[];
    /**
     * The list of policy violation keys that should not cause a
     * PolicyViolationError to be reported. Not all policy violations are
     * exemptable, refer to the is_exemptible field in the returned
     * PolicyViolationError.
     *
     * Resources violating these polices will be saved, but will not be eligible
     * to serve. They may begin serving at a later time due to a change in
     * policies, re-review of the resource, or a change in advertiser
     * certificates.
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.common.PolicyViolationKey exempt_policy_violation_keys = 2;
     */
    exemptPolicyViolationKeys: PolicyViolationKey[];
}
/**
 * Policy finding attached to a resource (for example, alcohol policy associated
 * with a site that sells alcohol).
 *
 * Each PolicyTopicEntry has a topic that indicates the specific ads policy
 * the entry is about and a type to indicate the effect that the entry will have
 * on serving. It may optionally have one or more evidences that indicate the
 * reason for the finding. It may also optionally have one or more constraints
 * that provide details about how serving may be restricted.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEntry
 */
export interface PolicyTopicEntry {
    /**
     * Policy topic this finding refers to. For example, "ALCOHOL",
     * "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible
     * policy topics is not fixed for a particular API version and may change
     * at any time.
     *
     * @generated from protobuf field: optional string topic = 5;
     */
    topic?: string;
    /**
     * Describes the negative or positive effect this policy will have on serving.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2;
     */
    type: PolicyTopicEntryTypeEnum_PolicyTopicEntryType;
    /**
     * Additional information that explains policy finding
     * (for example, the brand name for a trademark finding).
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.common.PolicyTopicEvidence evidences = 3;
     */
    evidences: PolicyTopicEvidence[];
    /**
     * Indicates how serving of this resource may be affected (for example, not
     * serving in a country).
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.common.PolicyTopicConstraint constraints = 4;
     */
    constraints: PolicyTopicConstraint[];
}
/**
 * Additional information that explains a policy finding.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence
 */
export interface PolicyTopicEvidence {
    /**
     * @generated from protobuf oneof: value
     */
    value: {
        oneofKind: "websiteList";
        /**
         * List of websites linked with this resource.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicEvidence.WebsiteList website_list = 3;
         */
        websiteList: PolicyTopicEvidence_WebsiteList;
    } | {
        oneofKind: "textList";
        /**
         * List of evidence found in the text of a resource.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicEvidence.TextList text_list = 4;
         */
        textList: PolicyTopicEvidence_TextList;
    } | {
        oneofKind: "languageCode";
        /**
         * The language the resource was detected to be written in.
         * This is an IETF language tag such as "en-US".
         *
         * @generated from protobuf field: string language_code = 9;
         */
        languageCode: string;
    } | {
        oneofKind: "destinationTextList";
        /**
         * The text in the destination of the resource that is causing a policy
         * finding.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationTextList destination_text_list = 6;
         */
        destinationTextList: PolicyTopicEvidence_DestinationTextList;
    } | {
        oneofKind: "destinationMismatch";
        /**
         * Mismatch between the destinations of a resource's URLs.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationMismatch destination_mismatch = 7;
         */
        destinationMismatch: PolicyTopicEvidence_DestinationMismatch;
    } | {
        oneofKind: "destinationNotWorking";
        /**
         * Details when the destination is returning an HTTP error code or isn't
         * functional in all locations for commonly used devices.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationNotWorking destination_not_working = 8;
         */
        destinationNotWorking: PolicyTopicEvidence_DestinationNotWorking;
    } | {
        oneofKind: undefined;
    };
}
/**
 * A list of fragments of text that violated a policy.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.TextList
 */
export interface PolicyTopicEvidence_TextList {
    /**
     * The fragments of text from the resource that caused the policy finding.
     *
     * @generated from protobuf field: repeated string texts = 2;
     */
    texts: string[];
}
/**
 * A list of websites that caused a policy finding. Used for
 * ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more
 * than five websites, only the top five (those that appear in resources the
 * most) will be listed here.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.WebsiteList
 */
export interface PolicyTopicEvidence_WebsiteList {
    /**
     * Websites that caused the policy finding.
     *
     * @generated from protobuf field: repeated string websites = 2;
     */
    websites: string[];
}
/**
 * A list of strings found in a destination page that caused a policy
 * finding.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationTextList
 */
export interface PolicyTopicEvidence_DestinationTextList {
    /**
     * List of text found in the resource's destination page.
     *
     * @generated from protobuf field: repeated string destination_texts = 2;
     */
    destinationTexts: string[];
}
/**
 * Evidence of mismatches between the URLs of a resource.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationMismatch
 */
export interface PolicyTopicEvidence_DestinationMismatch {
    /**
     * The set of URLs that did not match each other.
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1;
     */
    urlTypes: PolicyTopicEvidenceDestinationMismatchUrlTypeEnum_PolicyTopicEvidenceDestinationMismatchUrlType[];
}
/**
 * Evidence details when the destination is returning an HTTP error
 * code or isn't functional in all locations for commonly used devices.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationNotWorking
 */
export interface PolicyTopicEvidence_DestinationNotWorking {
    /**
     * The full URL that didn't work.
     *
     * @generated from protobuf field: optional string expanded_url = 7;
     */
    expandedUrl?: string;
    /**
     * The type of device that failed to load the URL.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4;
     */
    device: PolicyTopicEvidenceDestinationNotWorkingDeviceEnum_PolicyTopicEvidenceDestinationNotWorkingDevice;
    /**
     * The time the URL was last checked.
     * The format is "YYYY-MM-DD HH:MM:SS".
     * Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30"
     *
     * @generated from protobuf field: optional string last_checked_date_time = 8;
     */
    lastCheckedDateTime?: string;
    /**
     * @generated from protobuf oneof: reason
     */
    reason: {
        oneofKind: "dnsErrorType";
        /**
         * The type of DNS error.
         *
         * @generated from protobuf field: google.ads.googleads.v11.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1;
         */
        dnsErrorType: PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum_PolicyTopicEvidenceDestinationNotWorkingDnsErrorType;
    } | {
        oneofKind: "httpErrorCode";
        /**
         * The HTTP error code.
         *
         * @generated from protobuf field: int64 http_error_code = 6;
         */
        httpErrorCode: bigint;
    } | {
        oneofKind: undefined;
    };
}
/**
 * Describes the effect on serving that a policy topic entry will have.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint
 */
export interface PolicyTopicConstraint {
    /**
     * @generated from protobuf oneof: value
     */
    value: {
        oneofKind: "countryConstraintList";
        /**
         * Countries where the resource cannot serve.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraintList country_constraint_list = 1;
         */
        countryConstraintList: PolicyTopicConstraint_CountryConstraintList;
    } | {
        oneofKind: "resellerConstraint";
        /**
         * Reseller constraint.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicConstraint.ResellerConstraint reseller_constraint = 2;
         */
        resellerConstraint: PolicyTopicConstraint_ResellerConstraint;
    } | {
        oneofKind: "certificateMissingInCountryList";
        /**
         * Countries where a certificate is required for serving.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraintList certificate_missing_in_country_list = 3;
         */
        certificateMissingInCountryList: PolicyTopicConstraint_CountryConstraintList;
    } | {
        oneofKind: "certificateDomainMismatchInCountryList";
        /**
         * Countries where the resource's domain is not covered by the
         * certificates associated with it.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraintList certificate_domain_mismatch_in_country_list = 4;
         */
        certificateDomainMismatchInCountryList: PolicyTopicConstraint_CountryConstraintList;
    } | {
        oneofKind: undefined;
    };
}
/**
 * A list of countries where a resource's serving is constrained.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraintList
 */
export interface PolicyTopicConstraint_CountryConstraintList {
    /**
     * Total number of countries targeted by the resource.
     *
     * @generated from protobuf field: optional int32 total_targeted_countries = 3;
     */
    totalTargetedCountries?: number;
    /**
     * Countries in which serving is restricted.
     *
     * @generated from protobuf field: repeated google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraint countries = 2;
     */
    countries: PolicyTopicConstraint_CountryConstraint[];
}
/**
 * Indicates that a policy topic was constrained due to disapproval of the
 * website for reseller purposes.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.ResellerConstraint
 */
export interface PolicyTopicConstraint_ResellerConstraint {
}
/**
 * Indicates that a resource's ability to serve in a particular country is
 * constrained.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraint
 */
export interface PolicyTopicConstraint_CountryConstraint {
    /**
     * Geo target constant resource name of the country in which serving is
     * constrained.
     *
     * @generated from protobuf field: optional string country_criterion = 2;
     */
    countryCriterion?: string;
}
declare class PolicyViolationKey$Type extends MessageType<PolicyViolationKey> {
    constructor();
    create(value?: PartialMessage<PolicyViolationKey>): PolicyViolationKey;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyViolationKey): PolicyViolationKey;
    internalBinaryWrite(message: PolicyViolationKey, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyViolationKey
 */
export declare const PolicyViolationKey: PolicyViolationKey$Type;
declare class PolicyValidationParameter$Type extends MessageType<PolicyValidationParameter> {
    constructor();
    create(value?: PartialMessage<PolicyValidationParameter>): PolicyValidationParameter;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyValidationParameter): PolicyValidationParameter;
    internalBinaryWrite(message: PolicyValidationParameter, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyValidationParameter
 */
export declare const PolicyValidationParameter: PolicyValidationParameter$Type;
declare class PolicyTopicEntry$Type extends MessageType<PolicyTopicEntry> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEntry>): PolicyTopicEntry;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEntry): PolicyTopicEntry;
    internalBinaryWrite(message: PolicyTopicEntry, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEntry
 */
export declare const PolicyTopicEntry: PolicyTopicEntry$Type;
declare class PolicyTopicEvidence$Type extends MessageType<PolicyTopicEvidence> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence>): PolicyTopicEvidence;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence): PolicyTopicEvidence;
    internalBinaryWrite(message: PolicyTopicEvidence, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence
 */
export declare const PolicyTopicEvidence: PolicyTopicEvidence$Type;
declare class PolicyTopicEvidence_TextList$Type extends MessageType<PolicyTopicEvidence_TextList> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence_TextList>): PolicyTopicEvidence_TextList;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence_TextList): PolicyTopicEvidence_TextList;
    internalBinaryWrite(message: PolicyTopicEvidence_TextList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.TextList
 */
export declare const PolicyTopicEvidence_TextList: PolicyTopicEvidence_TextList$Type;
declare class PolicyTopicEvidence_WebsiteList$Type extends MessageType<PolicyTopicEvidence_WebsiteList> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence_WebsiteList>): PolicyTopicEvidence_WebsiteList;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence_WebsiteList): PolicyTopicEvidence_WebsiteList;
    internalBinaryWrite(message: PolicyTopicEvidence_WebsiteList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.WebsiteList
 */
export declare const PolicyTopicEvidence_WebsiteList: PolicyTopicEvidence_WebsiteList$Type;
declare class PolicyTopicEvidence_DestinationTextList$Type extends MessageType<PolicyTopicEvidence_DestinationTextList> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence_DestinationTextList>): PolicyTopicEvidence_DestinationTextList;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence_DestinationTextList): PolicyTopicEvidence_DestinationTextList;
    internalBinaryWrite(message: PolicyTopicEvidence_DestinationTextList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationTextList
 */
export declare const PolicyTopicEvidence_DestinationTextList: PolicyTopicEvidence_DestinationTextList$Type;
declare class PolicyTopicEvidence_DestinationMismatch$Type extends MessageType<PolicyTopicEvidence_DestinationMismatch> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence_DestinationMismatch>): PolicyTopicEvidence_DestinationMismatch;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence_DestinationMismatch): PolicyTopicEvidence_DestinationMismatch;
    internalBinaryWrite(message: PolicyTopicEvidence_DestinationMismatch, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationMismatch
 */
export declare const PolicyTopicEvidence_DestinationMismatch: PolicyTopicEvidence_DestinationMismatch$Type;
declare class PolicyTopicEvidence_DestinationNotWorking$Type extends MessageType<PolicyTopicEvidence_DestinationNotWorking> {
    constructor();
    create(value?: PartialMessage<PolicyTopicEvidence_DestinationNotWorking>): PolicyTopicEvidence_DestinationNotWorking;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicEvidence_DestinationNotWorking): PolicyTopicEvidence_DestinationNotWorking;
    internalBinaryWrite(message: PolicyTopicEvidence_DestinationNotWorking, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicEvidence.DestinationNotWorking
 */
export declare const PolicyTopicEvidence_DestinationNotWorking: PolicyTopicEvidence_DestinationNotWorking$Type;
declare class PolicyTopicConstraint$Type extends MessageType<PolicyTopicConstraint> {
    constructor();
    create(value?: PartialMessage<PolicyTopicConstraint>): PolicyTopicConstraint;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicConstraint): PolicyTopicConstraint;
    internalBinaryWrite(message: PolicyTopicConstraint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint
 */
export declare const PolicyTopicConstraint: PolicyTopicConstraint$Type;
declare class PolicyTopicConstraint_CountryConstraintList$Type extends MessageType<PolicyTopicConstraint_CountryConstraintList> {
    constructor();
    create(value?: PartialMessage<PolicyTopicConstraint_CountryConstraintList>): PolicyTopicConstraint_CountryConstraintList;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicConstraint_CountryConstraintList): PolicyTopicConstraint_CountryConstraintList;
    internalBinaryWrite(message: PolicyTopicConstraint_CountryConstraintList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraintList
 */
export declare const PolicyTopicConstraint_CountryConstraintList: PolicyTopicConstraint_CountryConstraintList$Type;
declare class PolicyTopicConstraint_ResellerConstraint$Type extends MessageType<PolicyTopicConstraint_ResellerConstraint> {
    constructor();
    create(value?: PartialMessage<PolicyTopicConstraint_ResellerConstraint>): PolicyTopicConstraint_ResellerConstraint;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicConstraint_ResellerConstraint): PolicyTopicConstraint_ResellerConstraint;
    internalBinaryWrite(message: PolicyTopicConstraint_ResellerConstraint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.ResellerConstraint
 */
export declare const PolicyTopicConstraint_ResellerConstraint: PolicyTopicConstraint_ResellerConstraint$Type;
declare class PolicyTopicConstraint_CountryConstraint$Type extends MessageType<PolicyTopicConstraint_CountryConstraint> {
    constructor();
    create(value?: PartialMessage<PolicyTopicConstraint_CountryConstraint>): PolicyTopicConstraint_CountryConstraint;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyTopicConstraint_CountryConstraint): PolicyTopicConstraint_CountryConstraint;
    internalBinaryWrite(message: PolicyTopicConstraint_CountryConstraint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.PolicyTopicConstraint.CountryConstraint
 */
export declare const PolicyTopicConstraint_CountryConstraint: PolicyTopicConstraint_CountryConstraint$Type;
export {};
