Files
pixel.horse/src/typings/my/patreon.d.ts
T
Eliot Partridge caf70a864f Revert codestyle changes (#40)
* Revert "7f7efbb94bab8574e42d942ad82d414e007b2970"

Code style changes should probably be part of a PR
2019-08-30 10:53:14 -05:00

63 lines
1.3 KiB
TypeScript

declare module 'patreon' {
export interface PatronDataRelation {
data: {
id: string;
type: string;
};
links: {
related: string;
};
}
export interface PatronDataEntry {
attributes: {
title?: string;
description?: string;
amount_cents?: number;
created_at?: string;
declined_since?: string | null;
patron_pays_fees?: boolean;
pledge_cap_cents?: number;
total_historical_amount_cents?: number;
};
id: string;
relationships: {
patron: PatronDataRelation;
reward: PatronDataRelation;
};
type: string;
}
export interface PatronData {
rawJson: {
data: PatronDataEntry[];
included: PatronDataEntry[];
links: {
next?: string;
};
};
}
export interface PatreonClient {
(pathname: string): Promise<PatronData>;
getStore(): any;
setStore(store: { sync: () => void }): void;
}
export interface PatreonTokens {
access_token: string;
refresh_token: string;
expires_in: string;
scope: string;
token_type: string;
}
export interface PatreonOAuthClient {
getTokens(redirectCode: string, redirectUri: string): Promise<PatreonTokens>;
refreshToken(refreshToken: string): Promise<any>;
}
export function patreon(accessToken: string): PatreonClient;
export function oauth(clientId: string, clientSecret: string): PatreonOAuthClient;
}