@remcostoeten/fync
Version:
Unified TypeScript library for 9 popular APIs with consistent functional architecture
343 lines • 7.96 kB
TypeScript
import { type TModule } from "../core";
declare const resources: {
users: import("../core").TResourceConfig<{
getUser: {
path: string;
};
getUserRepos: {
path: string;
};
getUserGists: {
path: string;
};
getUserFollowers: {
path: string;
};
getUserFollowing: {
path: string;
};
getUserStarred: {
path: string;
};
getUserOrgs: {
path: string;
};
getUserEvents: {
path: string;
};
getUserReceivedEvents: {
path: string;
};
checkUserFollowing: {
path: string;
};
}>;
repos: import("../core").TResourceConfig<{
getRepo: {
path: string;
};
getRepoCommits: {
path: string;
};
getRepoCommit: {
path: string;
};
getRepoBranches: {
path: string;
};
getRepoTags: {
path: string;
};
getRepoReleases: {
path: string;
};
getRepoLatestRelease: {
path: string;
};
getRepoContributors: {
path: string;
};
getRepoLanguages: {
path: string;
};
getRepoTopics: {
path: string;
};
getRepoStargazers: {
path: string;
};
getRepoForks: {
path: string;
};
getRepoIssues: {
path: string;
};
getRepoIssue: {
path: string;
};
getRepoPulls: {
path: string;
};
getRepoPull: {
path: string;
};
getRepoContents: {
path: string;
};
getRepoReadme: {
path: string;
};
createRepoIssue: {
path: string;
method: "POST";
};
updateRepoIssue: {
path: string;
method: "PATCH";
};
createRepoPull: {
path: string;
method: "POST";
};
}>;
search: import("../core").TResourceConfig<{
searchRepos: {
path: string;
};
searchCode: {
path: string;
};
searchIssues: {
path: string;
};
searchUsers: {
path: string;
};
searchTopics: {
path: string;
};
searchLabels: {
path: string;
};
searchCommits: {
path: string;
};
}>;
gists: import("../core").TResourceConfig<{
getPublicGists: {
path: string;
};
getUserGists: {
path: string;
};
getGist: {
path: string;
};
createGist: {
path: string;
method: "POST";
};
updateGist: {
path: string;
method: "PATCH";
};
deleteGist: {
path: string;
method: "DELETE";
};
getGistComments: {
path: string;
};
createGistComment: {
path: string;
method: "POST";
};
}>;
orgs: import("../core").TResourceConfig<{
getOrg: {
path: string;
};
getOrgRepos: {
path: string;
};
getOrgMembers: {
path: string;
};
getOrgTeams: {
path: string;
};
getOrgProjects: {
path: string;
};
getOrgEvents: {
path: string;
};
checkOrgMembership: {
path: string;
};
}>;
activity: import("../core").TResourceConfig<{
getPublicEvents: {
path: string;
};
getNotifications: {
path: string;
};
markNotificationAsRead: {
path: string;
method: "PATCH";
};
getStarred: {
path: string;
};
starRepo: {
path: string;
method: "PUT";
};
unstarRepo: {
path: string;
method: "DELETE";
};
getWatching: {
path: string;
};
watchRepo: {
path: string;
method: "PUT";
};
unwatchRepo: {
path: string;
method: "DELETE";
};
}>;
me: import("../core").TResourceConfig<{
getAuthenticatedUser: {
path: string;
};
updateAuthenticatedUser: {
path: string;
method: "PATCH";
};
getMyRepos: {
path: string;
};
getMyOrgs: {
path: string;
};
getMyGists: {
path: string;
};
getMyFollowers: {
path: string;
};
getMyFollowing: {
path: string;
};
followUser: {
path: string;
method: "PUT";
};
unfollowUser: {
path: string;
method: "DELETE";
};
getMyEmails: {
path: string;
};
getMySSHKeys: {
path: string;
};
addSSHKey: {
path: string;
method: "POST";
};
deleteSSHKey: {
path: string;
method: "DELETE";
};
}>;
stats: import("../core").TResourceConfig<{
getContributorStats: {
path: string;
};
getCommitActivity: {
path: string;
};
getCodeFrequency: {
path: string;
};
getParticipation: {
path: string;
};
getPunchCard: {
path: string;
};
}>;
git: import("../core").TResourceConfig<{
getRef: {
path: string;
};
getRefs: {
path: string;
};
createRef: {
path: string;
method: "POST";
};
updateRef: {
path: string;
method: "PATCH";
};
deleteRef: {
path: string;
method: "DELETE";
};
getCommit: {
path: string;
};
createCommit: {
path: string;
method: "POST";
};
getTree: {
path: string;
};
createTree: {
path: string;
method: "POST";
};
getBlob: {
path: string;
};
createBlob: {
path: string;
method: "POST";
};
getTag: {
path: string;
};
createTag: {
path: string;
method: "POST";
};
}>;
};
type TGitHubModule = TModule<typeof resources> & {
getUser: (username: string) => Promise<any>;
getRepository: (owner: string, repo: string) => Promise<any>;
getRepositoryFromUrl: (url: string) => Promise<any>;
getUserCommits: (username: string, options?: any) => Promise<any>;
getUserLatestCommit: (username: string) => Promise<any>;
getUserCommitsInTimeframe: (username: string, timeframe: string) => Promise<any>;
getRepositoryStars: (owner: string, repo: string) => Promise<number>;
getUserStarredCount: (username: string) => Promise<number>;
getUserStats: (username: string) => Promise<any>;
searchRepositories: (query: string, options?: any) => Promise<any>;
getUserActivity: (username: string, options?: any) => Promise<any>;
};
export declare function GitHub(config: {
token: string;
}): TGitHubModule;
export { GitHubOAuth, createGitHubOAuth, gitHubOAuth } from "./oauth";
export * from "./types";
//# sourceMappingURL=index.d.ts.map