message: Add detached source enum
diff: @@ -3,7 +3,7 @@ use crate::ids::{BankAccountId, PaymentSourceId};
  use crate::params::{Identifiable, List, Metadata, RangeQuery, Timestamp};
  use crate::resources::{
  Address, BankAccount, BankAccountVerifyParams, Currency, Deleted, Discount, PaymentSource,
  - PaymentSourceParams, Subscription,
  + PaymentSourceParams, Source, Subscription,
  };
  use serde_derive::{Deserialize, Serialize};
  @@ -14,6 +14,14 @@ pub struct CustomerShippingDetails {
  pub phone: String,
  }
  +#[derive(Clone, Debug, Deserialize, Serialize)]
  +#[serde(tag = "object", rename_all = "snake_case")]
  +pub enum DetachedSource {
  + Source(Source),
  + BankAccount(Deleted),
  + Card(Deleted),
  +}
  +
  /// The set of parameters that can be used when creating or updating a customer.
  ///
  /// For more details see https://stripe.com/docs/api#create_customer and https://stripe.com/docs/api#update_customer.
  @@ -139,7 +147,7 @@ impl Customer {
  client: &Client,
  customer_id: &str,
  source_id: &PaymentSourceId,
  - ) -> Response<PaymentSource> {
  + ) -> Response<DetachedSource> {
  client.delete(&format!("/customers/{}/sources/{}", customer_id, source_id))
  }
  