import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import * as components from "../components/index.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type ListAccountsGlobals = {
/**
* Specify an API version.
*
* @remarks
*
* API versioning follows the format `vYYYY.QQ.BB`, where
* - `YYYY` is the year
* - `QQ` is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
* - `BB` is the build number, starting at `.01`, for subsequent builds in the same quarter.
* - For example, `v2024.01.00` is the initial release of the first quarter of 2024.
*
* The `latest` version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
* When no version is specified, the API defaults to `v2024.01.00`.
*/
xMoovVersion?: string | undefined;
};
export type ListAccountsRequest = {
/**
* Filter connected accounts by name.
*
* @remarks
*
* If provided, this query will attempt to find matches against the following Account and Profile fields:
*
* - Account `displayName`
* - Individual Profile `firstName`, `middleName`, and `lastName`
* - Business Profile `legalBusinessName`
*
*
* Filtering by Guest Profile `name` is not currently supported.
*/
name?: string | undefined;
/**
* Filter connected accounts by email address.
*
* @remarks
*
* Provide the full email address to filter by email.
*/
email?: string | undefined;
/**
* Filter connected accounts by AccountType.
*
* @remarks
*
* If the `type` parameter is used in combination with `name`, only the corresponding type's name fields will
* be searched. For example, if `type=business` and `name=moov`, the search will attempt to find matches against
* the display name and Business Profile name fields (`legalBusinessName`, and `doingBusinessAs`).
*
* Filtering by `type=guest` is not currently supported.
*/
type?: components.CreateAccountType | undefined;
/**
* Serves as an optional alias from a foreign/external system which can be used to reference this resource.
*/
foreignID?: string | undefined;
/**
* Filter disconnected accounts.
*
* @remarks
*
* If true, the response will include disconnected accounts.
*/
includeDisconnected?: boolean | undefined;
/**
* Filter connected accounts by the capability.
*/
capability?: components.CapabilityID | undefined;
/**
* Filter connected accounts by the capability.
*/
capabilityStatus?: components.CapabilityStatus | undefined;
skip?: number | undefined;
count?: number | undefined;
};
export type ListAccountsResponse = {
headers: {
[k: string]: Array;
};
result: Array;
};
/** @internal */
export declare const ListAccountsGlobals$inboundSchema: z.ZodType;
/** @internal */
export type ListAccountsGlobals$Outbound = {
"X-Moov-Version"?: string | undefined;
};
/** @internal */
export declare const ListAccountsGlobals$outboundSchema: z.ZodType;
export declare function listAccountsGlobalsToJSON(listAccountsGlobals: ListAccountsGlobals): string;
export declare function listAccountsGlobalsFromJSON(jsonString: string): SafeParseResult;
/** @internal */
export declare const ListAccountsRequest$inboundSchema: z.ZodType;
/** @internal */
export type ListAccountsRequest$Outbound = {
name?: string | undefined;
email?: string | undefined;
type?: string | undefined;
foreignID?: string | undefined;
includeDisconnected?: boolean | undefined;
capability?: string | undefined;
capabilityStatus?: string | undefined;
skip?: number | undefined;
count?: number | undefined;
};
/** @internal */
export declare const ListAccountsRequest$outboundSchema: z.ZodType;
export declare function listAccountsRequestToJSON(listAccountsRequest: ListAccountsRequest): string;
export declare function listAccountsRequestFromJSON(jsonString: string): SafeParseResult;
/** @internal */
export declare const ListAccountsResponse$inboundSchema: z.ZodType;
/** @internal */
export type ListAccountsResponse$Outbound = {
Headers: {
[k: string]: Array;
};
Result: Array;
};
/** @internal */
export declare const ListAccountsResponse$outboundSchema: z.ZodType;
export declare function listAccountsResponseToJSON(listAccountsResponse: ListAccountsResponse): string;
export declare function listAccountsResponseFromJSON(jsonString: string): SafeParseResult;
//# sourceMappingURL=listaccounts.d.ts.map