vue-socials
Version:
Social media share buttons and counts for Vue.js
175 lines (174 loc) • 5.53 kB
TypeScript
/**
* Hey!
*
* SGithubRepoCount component used for Github social network
* @link https://github.com/
*/
declare const GITHUB_LINK_TYPES: {
watch: string;
star: string;
fork: string;
issues: string;
};
export declare type TSGithubLinkType = typeof GITHUB_LINK_TYPES[keyof typeof GITHUB_LINK_TYPES];
/**
* Share parameters for link
*/
export interface ISGithubRepoCountShareOptions {
username: string;
repository: string;
type: TSGithubLinkType;
}
export interface ISGithubRepoCountSuccessResponse {
archive_url: string;
archived: boolean;
assignees_url: string;
blobs_url: string;
branches_url: string;
clone_url: string;
collaborators_url: string;
comments_url: string;
commits_url: string;
compare_url: string;
contents_url: string;
contributors_url: string;
created_at: string;
default_branch: string;
deployments_url: string;
description: string;
disabled: boolean;
downloads_url: string;
events_url: string;
fork: boolean;
forks: number;
forks_count: number;
forks_url: string;
full_name: string;
git_commits_url: string;
git_refs_url: string;
git_tags_url: string;
git_url: string;
has_downloads: boolean;
has_issues: boolean;
has_pages: boolean;
has_projects: boolean;
has_wiki: boolean;
homepage: string;
hooks_url: string;
html_url: string;
id: number;
issue_comment_url: string;
issue_events_url: string;
issues_url: string;
keys_url: string;
labels_url: string;
language: string;
languages_url: string;
license: {
key: string;
name: string;
spdx_id: string;
url: string;
node_id: string;
};
merges_url: string;
milestones_url: string;
mirror_url: string | null;
name: string;
network_count: number;
node_id: string;
notifications_url: string;
open_issues: number;
open_issues_count: number;
owner: {
avatar_url: string;
events_url: string;
followers_url: string;
following_url: string;
gists_url: string;
gravatar_id: string;
html_url: string;
id: number;
login: string;
node_id: string;
organizations_url: string;
received_events_url: string;
repos_url: string;
site_admin: boolean;
starred_url: string;
subscriptions_url: string;
type: string;
url: string;
};
private: boolean;
pulls_url: string;
pushed_at: string;
releases_url: string;
size: number;
ssh_url: string;
stargazers_count: number;
stargazers_url: string;
statuses_url: string;
subscribers_count: number;
subscribers_url: string;
subscription_url: string;
svn_url: string;
tags_url: string;
teams_url: string;
temp_clone_token: string | null;
trees_url: string;
updated_at: string;
url: string;
watchers: number;
watchers_count: number;
}
export interface ISGithubRepoCountErrorResponse {
documentation_url: string;
message: string;
}
export interface ISGithubRepoCountResult {
meta: {
'Content-Type': string;
'Cache-Control': string;
Vary: string;
ETag: string;
'Last-Modified': string;
'X-GitHub-Media-Type': string;
status: number;
'X-RateLimit-Limit': string;
'X-RateLimit-Remaining': string;
'X-RateLimit-Reset': string;
'X-RateLimit-Used': string;
};
data: ISGithubRepoCountSuccessResponse | ISGithubRepoCountErrorResponse;
}
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {
handleGithubResponse(data: ISGithubRepoCountResult): void;
}, import("vue").DefineComponent<{
tag: {
type: (ObjectConstructor | StringConstructor)[];
default: string;
};
shareOptions: {
type: ObjectConstructor;
default: () => ISGithubRepoCountShareOptions | (new (...args: any[]) => ISGithubRepoCountShareOptions & object) | (() => ISGithubRepoCountShareOptions) | ((new (...args: any[]) => ISGithubRepoCountShareOptions & object) | (() => ISGithubRepoCountShareOptions))[];
required: true;
};
}, unknown, import("../../mixins/BaseCount/BaseCount").TBaseCountDataOptions<ISGithubRepoCountResult>, {
ariaLabel(): string;
}, {
handleResult(value: ISGithubRepoCountResult): void;
handleError(value: string | Error | null): void;
handleLoading(value: boolean): void;
handleCount(count: number | undefined): void;
generateComponent(): import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "loading" | "load")[], "error" | "loading" | "load", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
tag: string;
shareOptions: Record<string, any>;
} & {}>, {
tag: string;
shareOptions: Record<string, any>;
}>, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{} & {}>, {}>;
export default _default;