Added oauth to braintree gateway. (#43778)

Co-authored-by: matejss <matejss@inova.si>
This commit is contained in:
MatejSkrbis 2020-04-09 22:19:42 +02:00 committed by GitHub
parent 11eced8634
commit 0fd9f67701
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -44,6 +44,7 @@ declare namespace braintree {
discount: DiscountGateway;
dispute: DisputeGateway;
merchantAccount: MerchantAccountGateway;
oauth: OAuthGateway;
paymentMethod: PaymentMethodGateway;
paymentMethodNonce: PaymentMethodNonceGateway;
plan: PlanGateway;
@ -150,6 +151,13 @@ declare namespace braintree {
find(merchantAccountId: string): Promise<MerchantAccount>;
}
interface OAuthGateway {
createTokenFromCode(request: OAuthCreateTokenFromCodeRequest): Promise<ValidatedResponse<OAuthToken>>;
createTokenFromRefreshToken(request: OAuthCreateTokenFromRefreshTokenRequest): Promise<ValidatedResponse<OAuthToken>>;
revokeAccessToken(accessToken: string): Promise<ValidatedResponse<void>>;
connectUrl(urlRequest: OAuthConnectUrlRequest): string;
}
interface PaymentMethodGateway {
create(request: PaymentMethodCreateRequest): Promise<ValidatedResponse<PaymentMethod>>;
delete(token: string): Promise<void>;
@ -719,6 +727,32 @@ declare namespace braintree {
export type MerchantAccountStatus = 'Pending' | 'Active' | 'Suspended';
/**
* OAuth
*/
export interface OAuthToken {
credentials: {
accessToken: string;
expiresAt: string;
refreshToken: string;
};
}
export interface OAuthCreateTokenFromCodeRequest {
code: string;
}
export interface OAuthCreateTokenFromRefreshTokenRequest {
refreshToken: string;
}
export interface OAuthConnectUrlRequest {
redirectUri: string;
scope: string;
state?: string;
}
/**
* Payment Method
*/