import type { Condition } from './Condition';
import type { SalesChannel } from './SalesChannel';
import type { CreationEntityState } from './CreationEntityState';
/**
 *
 * @export
 * @interface PaymentConnectorConfigurationCreate
 */
export interface PaymentConnectorConfigurationCreate {
    /**
     * The name used to identify the connector configuration.
     * @type {string}
     * @memberof PaymentConnectorConfigurationCreate
     */
    name?: string;
    /**
     * The space views for which the connector configuration is enabled. If empty, it is enabled for all space views.
     * @type {Set<number>}
     * @memberof PaymentConnectorConfigurationCreate
     */
    enabledSpaceViews?: Set<number>;
    /**
     * Conditions allow to define criteria that a transaction must fulfill in order for the connector configuration to be considered for processing the payment.
     * @type {Array<Condition>}
     * @memberof PaymentConnectorConfigurationCreate
     */
    conditions?: Array<Condition>;
    /**
     * The priority that determines the order in which connector configurations are taken into account when processing a payment. Low values are considered first.
     * @type {number}
     * @memberof PaymentConnectorConfigurationCreate
     */
    priority?: number;
    /**
     * The sales channels for which the connector configuration is enabled. If empty, it is enabled for all sales channels.
     * @type {Set<SalesChannel>}
     * @memberof PaymentConnectorConfigurationCreate
     */
    enabledSalesChannels?: Set<SalesChannel>;
    /**
     * The payment method configuration that the connector configuration belongs to.
     * @type {number}
     * @memberof PaymentConnectorConfigurationCreate
     */
    paymentMethodConfiguration: number;
    /**
     * The connector that the configuration is for.
     * @type {number}
     * @memberof PaymentConnectorConfigurationCreate
     */
    connector: number;
    /**
     *
     * @type {CreationEntityState}
     * @memberof PaymentConnectorConfigurationCreate
     */
    state: CreationEntityState;
    /**
     * The processor configuration that the connector configuration belongs to.
     * @type {number}
     * @memberof PaymentConnectorConfigurationCreate
     */
    processorConfiguration: number;
}
/**
 * Check if a given object implements the PaymentConnectorConfigurationCreate interface.
 */
export declare function instanceOfPaymentConnectorConfigurationCreate(value: object): value is PaymentConnectorConfigurationCreate;
export declare function PaymentConnectorConfigurationCreateFromJSON(json: any): PaymentConnectorConfigurationCreate;
export declare function PaymentConnectorConfigurationCreateFromJSONTyped(json: any, ignoreDiscriminator: boolean): PaymentConnectorConfigurationCreate;
export declare function PaymentConnectorConfigurationCreateToJSON(json: any): PaymentConnectorConfigurationCreate;
export declare function PaymentConnectorConfigurationCreateToJSONTyped(value?: PaymentConnectorConfigurationCreate | null, ignoreDiscriminator?: boolean): any;
