///
/// AdServicesAttributionDataResponse.swift
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
/// https://github.com/mrousavy/nitro
/// Copyright © 2025 Marc Rousavy @ Margelo
///

import NitroModules

/**
 * Represents an instance of `AdServicesAttributionDataResponse`, backed by a C++ struct.
 */
public typealias AdServicesAttributionDataResponse = margelo.nitro.nitroappleadattribution.AdServicesAttributionDataResponse

public extension AdServicesAttributionDataResponse {
  private typealias bridge = margelo.nitro.nitroappleadattribution.bridge.swift

  /**
   * Create a new instance of `AdServicesAttributionDataResponse`.
   */
  init(data: AppleAdsAttributionData, error: Error) {
    self.init(data, error.toCpp())
  }

  var data: AppleAdsAttributionData {
    @inline(__always)
    get {
      return self.__data
    }
    @inline(__always)
    set {
      self.__data = newValue
    }
  }
  
  var error: Error {
    @inline(__always)
    get {
      return RuntimeError.from(cppError: self.__error)
    }
    @inline(__always)
    set {
      self.__error = newValue.toCpp()
    }
  }
}
