// Path: src/main/java/com/lookfirst/wepay/api/WePayAccount.java
// @Data
// @EqualsAndHashCode(callSuper=false)
// public class WePayAccount extends AccountUri {
// 	private static final long serialVersionUID = 1L;
// 
// 	/** The name of the account. */
// 	private String name;
// 	/** The state of the account: active, disabled or deleted. */
// 	private String state;
// 	/** The account description. */
// 	private String description;
// 	/** The unique reference ID of the account (this is set by the application in the /account/create or /account/modify call). */
// 	private String referenceId;
// 	/** The maximum amount in dollars (including fees) that you can charge for payments to this account. */
// 	private String paymentLimit;
// 	/** An array of Google Analytics domains associated with the app. */
// 	private List<String> gaqDomains;
// 	/** The theme object associated with the App (if applicable). */
// 	private ThemeObject themeObject;
// 	/** Returns "verified" if the account has been verified and "unverified" if it has not. If the account has pending verification, then it is "pending". */
// 	private String verificationState;
// 	/** If the account is "unverified" then you can send the user to this url to verify their account. */
// 	private String verificationUrl;
// 	/** The account type. Can be "personal", "nonprofit", or "business". */
// 	private String type;
// 	/** The unixtime when the account was created. */
// 	private Long createTime;
// 	/** Array of account balances for each currency. */
// 	private List<AccountBalance> balances;
// 	/** Array of account incoming and outgoing payments status for each currency. */
// 	private List<AccountStatus> statuses;
// 	/** Array of action strings explaining all the actions that are required to make this account active. It will be empty if no action is required. */
// 	private List<String> actionReasons;
// 	/** The account's country of origin 2-letter ISO code (e.g. 'US') */
// 	private String country;
// 	/** Array of supported currency strings for this account (e.g. ["USD"]). Only "USD" is supported for now. */
// 	private List<String> currencies;
// }
// 
// Path: src/main/java/com/lookfirst/wepay/api/Constants.java
// public static enum SortOrder { ASC, DESC }


import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.lookfirst.wepay.api.WePayAccount;
import com.lookfirst.wepay.api.Constants.SortOrder;
package com.lookfirst.wepay.api.req;




/**
 * https://stage.wepay.com/developer/reference/account
 *
 * This call lets you search the accounts of the user associated with the access token used to make the call.
 * You can search by name or reference_id, and the response will be an array of all the matching accounts.
 * If both name and reference_id are blank, this will return an array of all of the user's accounts.
 *
 * @author Jon Scott Stevens
 * @author Jeff Schnitzer
 */
@Data
@EqualsAndHashCode(callSuper=false)
public class AccountFindRequest extends WePayRequest<List<WePayAccount>> {

	/** The name of the account you are searching for. */
	private String name;
	/** The reference ID of the account you are searching for (set by the app in in /account/create or account/modify). */
	private String referenceId;
	/** Sort the results of the search by time created. Use 'DESC' for most recent to least recent. Use 'ASC' for least recent to most recent. Defaults to 'DESC'. */
// Path: src/main/java/com/lookfirst/wepay/api/WePayAccount.java
// @Data
// @EqualsAndHashCode(callSuper=false)
// public class WePayAccount extends AccountUri {
// 	private static final long serialVersionUID = 1L;
// 
// 	/** The name of the account. */
// 	private String name;
// 	/** The state of the account: active, disabled or deleted. */
// 	private String state;
// 	/** The account description. */
// 	private String description;
// 	/** The unique reference ID of the account (this is set by the application in the /account/create or /account/modify call). */
// 	private String referenceId;
// 	/** The maximum amount in dollars (including fees) that you can charge for payments to this account. */
// 	private String paymentLimit;
// 	/** An array of Google Analytics domains associated with the app. */
// 	private List<String> gaqDomains;
// 	/** The theme object associated with the App (if applicable). */
// 	private ThemeObject themeObject;
// 	/** Returns "verified" if the account has been verified and "unverified" if it has not. If the account has pending verification, then it is "pending". */
// 	private String verificationState;
// 	/** If the account is "unverified" then you can send the user to this url to verify their account. */
// 	private String verificationUrl;
// 	/** The account type. Can be "personal", "nonprofit", or "business". */
// 	private String type;
// 	/** The unixtime when the account was created. */
// 	private Long createTime;
// 	/** Array of account balances for each currency. */
// 	private List<AccountBalance> balances;
// 	/** Array of account incoming and outgoing payments status for each currency. */
// 	private List<AccountStatus> statuses;
// 	/** Array of action strings explaining all the actions that are required to make this account active. It will be empty if no action is required. */
// 	private List<String> actionReasons;
// 	/** The account's country of origin 2-letter ISO code (e.g. 'US') */
// 	private String country;
// 	/** Array of supported currency strings for this account (e.g. ["USD"]). Only "USD" is supported for now. */
// 	private List<String> currencies;
// }
// 
// Path: src/main/java/com/lookfirst/wepay/api/Constants.java
// public static enum SortOrder { ASC, DESC }


// Path: src/main/java/com/lookfirst/wepay/api/req/AccountFindRequest.java
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.lookfirst.wepay.api.WePayAccount;
import com.lookfirst.wepay.api.Constants.SortOrder;

package com.lookfirst.wepay.api.req;




/**
 * https://stage.wepay.com/developer/reference/account
 *
 * This call lets you search the accounts of the user associated with the access token used to make the call.
 * You can search by name or reference_id, and the response will be an array of all the matching accounts.
 * If both name and reference_id are blank, this will return an array of all of the user's accounts.
 *
 * @author Jon Scott Stevens
 * @author Jeff Schnitzer
 */
@Data
@EqualsAndHashCode(callSuper=false)
public class AccountFindRequest extends WePayRequest<List<WePayAccount>> {

	/** The name of the account you are searching for. */
	private String name;
	/** The reference ID of the account you are searching for (set by the app in in /account/create or account/modify). */
	private String referenceId;
	/** Sort the results of the search by time created. Use 'DESC' for most recent to least recent. Use 'ASC' for least recent to most recent. Defaults to 'DESC'. */
	private SortOrder sortOrder;