type Query {
    promotion(id: ID!): Promotion
    promotions(options: PromotionListOptions): PromotionList!
    adjustmentOperations: AdjustmentOperations!
}

type Mutation {
    createPromotion(input: CreatePromotionInput!): Promotion!
    updatePromotion(input: UpdatePromotionInput!): Promotion!
    deletePromotion(id: ID!): DeletionResponse!
}

# generated by generateListOptions function
input PromotionListOptions

input CreatePromotionInput {
    name: String!
    enabled: Boolean!
    conditions: [ConfigurableOperationInput!]!
    actions: [ConfigurableOperationInput!]!
}

input UpdatePromotionInput {
    id: ID!
    name: String
    enabled: Boolean
    conditions: [ConfigurableOperationInput!]
    actions: [ConfigurableOperationInput!]
}
