glabc
Version: 
Node.js Client for the Codeberg API
2,452 lines • 1.33 MB
TypeScript
/**
 * Forgejo API
 * This documentation describes the Forgejo API.
 *
 * The version of the OpenAPI document: 12.0.1-69-f75e427e+gitea-1.22.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { Configuration } from './configuration.js';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import globalAxios from 'axios';
import type { RequestArgs } from './base.js';
import { BaseAPI } from './base.js';
/**
 * APIError is an api error with a message
 * @export
 * @interface APIError
 */
export interface APIError {
    /**
     *
     * @type {string}
     * @memberof APIError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIForbiddenError
 */
export interface APIForbiddenError {
    /**
     *
     * @type {string}
     * @memberof APIForbiddenError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIForbiddenError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIInternalServerError
 */
export interface APIInternalServerError {
    /**
     *
     * @type {string}
     * @memberof APIInternalServerError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIInternalServerError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIInvalidTopicsError
 */
export interface APIInvalidTopicsError {
    /**
     *
     * @type {Array<string>}
     * @memberof APIInvalidTopicsError
     */
    invalidTopics?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof APIInvalidTopicsError
     */
    message?: string;
}
/**
 *
 * @export
 * @interface APINotFound
 */
export interface APINotFound {
    /**
     *
     * @type {Array<string>}
     * @memberof APINotFound
     */
    errors?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof APINotFound
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APINotFound
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIRepoArchivedError
 */
export interface APIRepoArchivedError {
    /**
     *
     * @type {string}
     * @memberof APIRepoArchivedError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIRepoArchivedError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIUnauthorizedError
 */
export interface APIUnauthorizedError {
    /**
     *
     * @type {string}
     * @memberof APIUnauthorizedError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIUnauthorizedError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface APIValidationError
 */
export interface APIValidationError {
    /**
     *
     * @type {string}
     * @memberof APIValidationError
     */
    message?: string;
    /**
     *
     * @type {string}
     * @memberof APIValidationError
     */
    url?: string;
}
/**
 *
 * @export
 * @interface AccessToken
 */
export interface AccessToken {
    /**
     *
     * @type {number}
     * @memberof AccessToken
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof AccessToken
     */
    name?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof AccessToken
     */
    scopes?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof AccessToken
     */
    sha1?: string;
    /**
     *
     * @type {string}
     * @memberof AccessToken
     */
    token_last_eight?: string;
}
/**
 * ActionRun represents an action run
 * @export
 * @interface ActionRun
 */
export interface ActionRun {
    /**
     * the cron id for the schedule trigger
     * @type {number}
     * @memberof ActionRun
     */
    ScheduleID?: number;
    /**
     * who approved this action run
     * @type {number}
     * @memberof ActionRun
     */
    approved_by?: number;
    /**
     * the commit sha the action run ran on
     * @type {string}
     * @memberof ActionRun
     */
    commit_sha?: string;
    /**
     * when the action run was created
     * @type {string}
     * @memberof ActionRun
     */
    created?: string;
    /**
     * A Duration represents the elapsed time between two instants as an int64 nanosecond count. The representation limits the largest representable duration to approximately 290 years.
     * @type {number}
     * @memberof ActionRun
     */
    duration?: number;
    /**
     * the webhook event that causes the workflow to run
     * @type {string}
     * @memberof ActionRun
     */
    event?: string;
    /**
     * the payload of the webhook event that causes the workflow to run
     * @type {string}
     * @memberof ActionRun
     */
    event_payload?: string;
    /**
     * the url of this action run
     * @type {string}
     * @memberof ActionRun
     */
    html_url?: string;
    /**
     * the action run id
     * @type {number}
     * @memberof ActionRun
     */
    id?: number;
    /**
     * a unique number for each run of a repository
     * @type {number}
     * @memberof ActionRun
     */
    index_in_repo?: number;
    /**
     * If this is triggered by a PR from a forked repository or an untrusted user, we need to check if it is approved and limit permissions when running the workflow.
     * @type {boolean}
     * @memberof ActionRun
     */
    is_fork_pull_request?: boolean;
    /**
     * has the commit/tag/… the action run ran on been deleted
     * @type {boolean}
     * @memberof ActionRun
     */
    is_ref_deleted?: boolean;
    /**
     * may need approval if it\'s a fork pull request
     * @type {boolean}
     * @memberof ActionRun
     */
    need_approval?: boolean;
    /**
     * the commit/tag/… the action run ran on
     * @type {string}
     * @memberof ActionRun
     */
    prettyref?: string;
    /**
     *
     * @type {Repository}
     * @memberof ActionRun
     */
    repository?: Repository;
    /**
     * when the action run was started
     * @type {string}
     * @memberof ActionRun
     */
    started?: string;
    /**
     * the current status of this run
     * @type {string}
     * @memberof ActionRun
     */
    status?: string;
    /**
     * when the action run was stopped
     * @type {string}
     * @memberof ActionRun
     */
    stopped?: string;
    /**
     * the action run\'s title
     * @type {string}
     * @memberof ActionRun
     */
    title?: string;
    /**
     * the trigger event defined in the `on` configuration of the triggered workflow
     * @type {string}
     * @memberof ActionRun
     */
    trigger_event?: string;
    /**
     *
     * @type {User}
     * @memberof ActionRun
     */
    trigger_user?: User;
    /**
     * when the action run was last updated
     * @type {string}
     * @memberof ActionRun
     */
    updated?: string;
    /**
     * the name of workflow file
     * @type {string}
     * @memberof ActionRun
     */
    workflow_id?: string;
}
/**
 * ActionRunJob represents a job of a run
 * @export
 * @interface ActionRunJob
 */
export interface ActionRunJob {
    /**
     * the action run job id
     * @type {number}
     * @memberof ActionRunJob
     */
    id?: number;
    /**
     * the action run job name
     * @type {string}
     * @memberof ActionRunJob
     */
    name?: string;
    /**
     * the action run job needed ids
     * @type {Array<string>}
     * @memberof ActionRunJob
     */
    needs?: Array<string>;
    /**
     * the owner id
     * @type {number}
     * @memberof ActionRunJob
     */
    owner_id?: number;
    /**
     * the repository id
     * @type {number}
     * @memberof ActionRunJob
     */
    repo_id?: number;
    /**
     * the action run job labels to run on
     * @type {Array<string>}
     * @memberof ActionRunJob
     */
    runs_on?: Array<string>;
    /**
     * the action run job status
     * @type {string}
     * @memberof ActionRunJob
     */
    status?: string;
    /**
     * the action run job latest task id
     * @type {number}
     * @memberof ActionRunJob
     */
    task_id?: number;
}
/**
 * ActionTask represents a ActionTask
 * @export
 * @interface ActionTask
 */
export interface ActionTask {
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    created_at?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    display_title?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    event?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    head_branch?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    head_sha?: string;
    /**
     *
     * @type {number}
     * @memberof ActionTask
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    name?: string;
    /**
     *
     * @type {number}
     * @memberof ActionTask
     */
    run_number?: number;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    run_started_at?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    updated_at?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    url?: string;
    /**
     *
     * @type {string}
     * @memberof ActionTask
     */
    workflow_id?: string;
}
/**
 * ActionTaskResponse returns a ActionTask
 * @export
 * @interface ActionTaskResponse
 */
export interface ActionTaskResponse {
    /**
     *
     * @type {number}
     * @memberof ActionTaskResponse
     */
    total_count?: number;
    /**
     *
     * @type {Array<ActionTask>}
     * @memberof ActionTaskResponse
     */
    workflow_runs?: Array<ActionTask>;
}
/**
 * ActionVariable return value of the query API
 * @export
 * @interface ActionVariable
 */
export interface ActionVariable {
    /**
     * the value of the variable
     * @type {string}
     * @memberof ActionVariable
     */
    data?: string;
    /**
     * the name of the variable
     * @type {string}
     * @memberof ActionVariable
     */
    name?: string;
    /**
     * the owner to which the variable belongs
     * @type {number}
     * @memberof ActionVariable
     */
    owner_id?: number;
    /**
     * the repository to which the variable belongs
     * @type {number}
     * @memberof ActionVariable
     */
    repo_id?: number;
}
/**
 *
 * @export
 * @interface Activity
 */
export interface Activity {
    /**
     *
     * @type {User}
     * @memberof Activity
     */
    act_user?: User;
    /**
     *
     * @type {number}
     * @memberof Activity
     */
    act_user_id?: number;
    /**
     *
     * @type {Comment}
     * @memberof Activity
     */
    comment?: Comment;
    /**
     *
     * @type {number}
     * @memberof Activity
     */
    comment_id?: number;
    /**
     *
     * @type {string}
     * @memberof Activity
     */
    content?: string;
    /**
     *
     * @type {string}
     * @memberof Activity
     */
    created?: string;
    /**
     *
     * @type {number}
     * @memberof Activity
     */
    id?: number;
    /**
     *
     * @type {boolean}
     * @memberof Activity
     */
    is_private?: boolean;
    /**
     * the type of action
     * @type {string}
     * @memberof Activity
     */
    op_type?: ActivityOpTypeEnum;
    /**
     *
     * @type {string}
     * @memberof Activity
     */
    ref_name?: string;
    /**
     *
     * @type {Repository}
     * @memberof Activity
     */
    repo?: Repository;
    /**
     *
     * @type {number}
     * @memberof Activity
     */
    repo_id?: number;
    /**
     *
     * @type {number}
     * @memberof Activity
     */
    user_id?: number;
}
export declare const ActivityOpTypeEnum: {
    readonly CreateRepo: "create_repo";
    readonly RenameRepo: "rename_repo";
    readonly StarRepo: "star_repo";
    readonly WatchRepo: "watch_repo";
    readonly CommitRepo: "commit_repo";
    readonly CreateIssue: "create_issue";
    readonly CreatePullRequest: "create_pull_request";
    readonly TransferRepo: "transfer_repo";
    readonly PushTag: "push_tag";
    readonly CommentIssue: "comment_issue";
    readonly MergePullRequest: "merge_pull_request";
    readonly CloseIssue: "close_issue";
    readonly ReopenIssue: "reopen_issue";
    readonly ClosePullRequest: "close_pull_request";
    readonly ReopenPullRequest: "reopen_pull_request";
    readonly DeleteTag: "delete_tag";
    readonly DeleteBranch: "delete_branch";
    readonly MirrorSyncPush: "mirror_sync_push";
    readonly MirrorSyncCreate: "mirror_sync_create";
    readonly MirrorSyncDelete: "mirror_sync_delete";
    readonly ApprovePullRequest: "approve_pull_request";
    readonly RejectPullRequest: "reject_pull_request";
    readonly CommentPull: "comment_pull";
    readonly PublishRelease: "publish_release";
    readonly PullReviewDismissed: "pull_review_dismissed";
    readonly PullRequestReadyForReview: "pull_request_ready_for_review";
    readonly AutoMergePullRequest: "auto_merge_pull_request";
};
export type ActivityOpTypeEnum = (typeof ActivityOpTypeEnum)[keyof typeof ActivityOpTypeEnum];
/**
 * ActivityPub type
 * @export
 * @interface ActivityPub
 */
export interface ActivityPub {
    /**
     *
     * @type {string}
     * @memberof ActivityPub
     */
    '@context'?: string;
}
/**
 * AddCollaboratorOption options when adding a user as a collaborator of a repository
 * @export
 * @interface AddCollaboratorOption
 */
export interface AddCollaboratorOption {
    /**
     *
     * @type {string}
     * @memberof AddCollaboratorOption
     */
    permission?: AddCollaboratorOptionPermissionEnum;
}
export declare const AddCollaboratorOptionPermissionEnum: {
    readonly Read: "read";
    readonly Write: "write";
    readonly Admin: "admin";
};
export type AddCollaboratorOptionPermissionEnum = (typeof AddCollaboratorOptionPermissionEnum)[keyof typeof AddCollaboratorOptionPermissionEnum];
/**
 * AddTimeOption options for adding time to an issue
 * @export
 * @interface AddTimeOption
 */
export interface AddTimeOption {
    /**
     *
     * @type {string}
     * @memberof AddTimeOption
     */
    created?: string;
    /**
     * time in seconds
     * @type {number}
     * @memberof AddTimeOption
     */
    time: number;
    /**
     * User who spent the time (optional)
     * @type {string}
     * @memberof AddTimeOption
     */
    user_name?: string;
}
/**
 * AnnotatedTag represents an annotated tag
 * @export
 * @interface AnnotatedTag
 */
export interface AnnotatedTag {
    /**
     *
     * @type {TagArchiveDownloadCount}
     * @memberof AnnotatedTag
     */
    archive_download_count?: TagArchiveDownloadCount;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTag
     */
    message?: string;
    /**
     *
     * @type {AnnotatedTagObject}
     * @memberof AnnotatedTag
     */
    object?: AnnotatedTagObject;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTag
     */
    sha?: string;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTag
     */
    tag?: string;
    /**
     *
     * @type {CommitUser}
     * @memberof AnnotatedTag
     */
    tagger?: CommitUser;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTag
     */
    url?: string;
    /**
     *
     * @type {PayloadCommitVerification}
     * @memberof AnnotatedTag
     */
    verification?: PayloadCommitVerification;
}
/**
 * AnnotatedTagObject contains meta information of the tag object
 * @export
 * @interface AnnotatedTagObject
 */
export interface AnnotatedTagObject {
    /**
     *
     * @type {string}
     * @memberof AnnotatedTagObject
     */
    sha?: string;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTagObject
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof AnnotatedTagObject
     */
    url?: string;
}
/**
 * Attachment a generic attachment
 * @export
 * @interface Attachment
 */
export interface Attachment {
    /**
     *
     * @type {string}
     * @memberof Attachment
     */
    browser_download_url?: string;
    /**
     *
     * @type {string}
     * @memberof Attachment
     */
    created_at?: string;
    /**
     *
     * @type {number}
     * @memberof Attachment
     */
    download_count?: number;
    /**
     *
     * @type {number}
     * @memberof Attachment
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof Attachment
     */
    name?: string;
    /**
     *
     * @type {number}
     * @memberof Attachment
     */
    size?: number;
    /**
     *
     * @type {string}
     * @memberof Attachment
     */
    type?: AttachmentTypeEnum;
    /**
     *
     * @type {string}
     * @memberof Attachment
     */
    uuid?: string;
}
export declare const AttachmentTypeEnum: {
    readonly Attachment: "attachment";
    readonly External: "external";
};
export type AttachmentTypeEnum = (typeof AttachmentTypeEnum)[keyof typeof AttachmentTypeEnum];
/**
 *
 * @export
 * @interface BlockedUser
 */
export interface BlockedUser {
    /**
     *
     * @type {number}
     * @memberof BlockedUser
     */
    block_id?: number;
    /**
     *
     * @type {string}
     * @memberof BlockedUser
     */
    created_at?: string;
}
/**
 * Branch represents a repository branch
 * @export
 * @interface Branch
 */
export interface Branch {
    /**
     *
     * @type {PayloadCommit}
     * @memberof Branch
     */
    commit?: PayloadCommit;
    /**
     *
     * @type {string}
     * @memberof Branch
     */
    effective_branch_protection_name?: string;
    /**
     *
     * @type {boolean}
     * @memberof Branch
     */
    enable_status_check?: boolean;
    /**
     *
     * @type {string}
     * @memberof Branch
     */
    name?: string;
    /**
     *
     * @type {boolean}
     * @memberof Branch
     */
    protected?: boolean;
    /**
     *
     * @type {number}
     * @memberof Branch
     */
    required_approvals?: number;
    /**
     *
     * @type {Array<string>}
     * @memberof Branch
     */
    status_check_contexts?: Array<string>;
    /**
     *
     * @type {boolean}
     * @memberof Branch
     */
    user_can_merge?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof Branch
     */
    user_can_push?: boolean;
}
/**
 * BranchProtection represents a branch protection for a repository
 * @export
 * @interface BranchProtection
 */
export interface BranchProtection {
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    apply_to_admins?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    approvals_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    approvals_whitelist_username?: Array<string>;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    block_on_official_review_requests?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    block_on_outdated_branch?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    block_on_rejected_reviews?: boolean;
    /**
     * Deprecated: true
     * @type {string}
     * @memberof BranchProtection
     */
    branch_name?: string;
    /**
     *
     * @type {string}
     * @memberof BranchProtection
     */
    created_at?: string;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    dismiss_stale_approvals?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    enable_approvals_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    enable_merge_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    enable_push?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    enable_push_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    enable_status_check?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    ignore_stale_approvals?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    merge_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    merge_whitelist_usernames?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof BranchProtection
     */
    protected_file_patterns?: string;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    push_whitelist_deploy_keys?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    push_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    push_whitelist_usernames?: Array<string>;
    /**
     *
     * @type {boolean}
     * @memberof BranchProtection
     */
    require_signed_commits?: boolean;
    /**
     *
     * @type {number}
     * @memberof BranchProtection
     */
    required_approvals?: number;
    /**
     *
     * @type {string}
     * @memberof BranchProtection
     */
    rule_name?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof BranchProtection
     */
    status_check_contexts?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof BranchProtection
     */
    unprotected_file_patterns?: string;
    /**
     *
     * @type {string}
     * @memberof BranchProtection
     */
    updated_at?: string;
}
/**
 * ChangeFileOperation for creating, updating or deleting a file
 * @export
 * @interface ChangeFileOperation
 */
export interface ChangeFileOperation {
    /**
     * new or updated file content, must be base64 encoded
     * @type {string}
     * @memberof ChangeFileOperation
     */
    content?: string;
    /**
     * old path of the file to move
     * @type {string}
     * @memberof ChangeFileOperation
     */
    from_path?: string;
    /**
     * indicates what to do with the file
     * @type {string}
     * @memberof ChangeFileOperation
     */
    operation: ChangeFileOperationOperationEnum;
    /**
     * path to the existing or new file
     * @type {string}
     * @memberof ChangeFileOperation
     */
    path: string;
    /**
     * sha is the SHA for the file that already exists, required for update or delete
     * @type {string}
     * @memberof ChangeFileOperation
     */
    sha?: string;
}
export declare const ChangeFileOperationOperationEnum: {
    readonly Create: "create";
    readonly Update: "update";
    readonly Delete: "delete";
};
export type ChangeFileOperationOperationEnum = (typeof ChangeFileOperationOperationEnum)[keyof typeof ChangeFileOperationOperationEnum];
/**
 * ChangeFilesOptions options for creating, updating or deleting multiple files Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
 * @export
 * @interface ChangeFilesOptions
 */
export interface ChangeFilesOptions {
    /**
     *
     * @type {Identity}
     * @memberof ChangeFilesOptions
     */
    author?: Identity;
    /**
     * branch (optional) to base this file from. if not given, the default branch is used
     * @type {string}
     * @memberof ChangeFilesOptions
     */
    branch?: string;
    /**
     *
     * @type {Identity}
     * @memberof ChangeFilesOptions
     */
    committer?: Identity;
    /**
     *
     * @type {CommitDateOptions}
     * @memberof ChangeFilesOptions
     */
    dates?: CommitDateOptions;
    /**
     * list of file operations
     * @type {Array<ChangeFileOperation>}
     * @memberof ChangeFilesOptions
     */
    files: Array<ChangeFileOperation>;
    /**
     * message (optional) for the commit of this file. if not supplied, a default message will be used
     * @type {string}
     * @memberof ChangeFilesOptions
     */
    message?: string;
    /**
     * new_branch (optional) will make a new branch from `branch` before creating the file
     * @type {string}
     * @memberof ChangeFilesOptions
     */
    new_branch?: string;
    /**
     * Add a Signed-off-by trailer by the committer at the end of the commit log message.
     * @type {boolean}
     * @memberof ChangeFilesOptions
     */
    signoff?: boolean;
}
/**
 * ChangedFile store information about files affected by the pull request
 * @export
 * @interface ChangedFile
 */
export interface ChangedFile {
    /**
     *
     * @type {number}
     * @memberof ChangedFile
     */
    additions?: number;
    /**
     *
     * @type {number}
     * @memberof ChangedFile
     */
    changes?: number;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    contents_url?: string;
    /**
     *
     * @type {number}
     * @memberof ChangedFile
     */
    deletions?: number;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    filename?: string;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    html_url?: string;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    previous_filename?: string;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    raw_url?: string;
    /**
     *
     * @type {string}
     * @memberof ChangedFile
     */
    status?: string;
}
/**
 * CombinedStatus holds the combined state of several statuses for a single commit
 * @export
 * @interface CombinedStatus
 */
export interface CombinedStatus {
    /**
     *
     * @type {string}
     * @memberof CombinedStatus
     */
    commit_url?: string;
    /**
     *
     * @type {Repository}
     * @memberof CombinedStatus
     */
    repository?: Repository;
    /**
     *
     * @type {string}
     * @memberof CombinedStatus
     */
    sha?: string;
    /**
     * CommitStatusState holds the state of a CommitStatus It can be \"pending\", \"success\", \"error\" and \"failure\"
     * @type {string}
     * @memberof CombinedStatus
     */
    state?: string;
    /**
     *
     * @type {Array<CommitStatus>}
     * @memberof CombinedStatus
     */
    statuses?: Array<CommitStatus>;
    /**
     *
     * @type {number}
     * @memberof CombinedStatus
     */
    total_count?: number;
    /**
     *
     * @type {string}
     * @memberof CombinedStatus
     */
    url?: string;
}
/**
 * Comment represents a comment on a commit or issue
 * @export
 * @interface Comment
 */
export interface Comment {
    /**
     *
     * @type {Array<Attachment>}
     * @memberof Comment
     */
    assets?: Array<Attachment>;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    body?: string;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    created_at?: string;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    html_url?: string;
    /**
     *
     * @type {number}
     * @memberof Comment
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    issue_url?: string;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    original_author?: string;
    /**
     *
     * @type {number}
     * @memberof Comment
     */
    original_author_id?: number;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    pull_request_url?: string;
    /**
     *
     * @type {string}
     * @memberof Comment
     */
    updated_at?: string;
    /**
     *
     * @type {User}
     * @memberof Comment
     */
    user?: User;
}
/**
 *
 * @export
 * @interface Commit
 */
export interface Commit {
    /**
     *
     * @type {User}
     * @memberof Commit
     */
    author?: User;
    /**
     *
     * @type {RepoCommit}
     * @memberof Commit
     */
    commit?: RepoCommit;
    /**
     *
     * @type {User}
     * @memberof Commit
     */
    committer?: User;
    /**
     *
     * @type {string}
     * @memberof Commit
     */
    created?: string;
    /**
     *
     * @type {Array<CommitAffectedFiles>}
     * @memberof Commit
     */
    files?: Array<CommitAffectedFiles>;
    /**
     *
     * @type {string}
     * @memberof Commit
     */
    html_url?: string;
    /**
     *
     * @type {Array<CommitMeta>}
     * @memberof Commit
     */
    parents?: Array<CommitMeta>;
    /**
     *
     * @type {string}
     * @memberof Commit
     */
    sha?: string;
    /**
     *
     * @type {CommitStats}
     * @memberof Commit
     */
    stats?: CommitStats;
    /**
     *
     * @type {string}
     * @memberof Commit
     */
    url?: string;
}
/**
 * CommitAffectedFiles store information about files affected by the commit
 * @export
 * @interface CommitAffectedFiles
 */
export interface CommitAffectedFiles {
    /**
     *
     * @type {string}
     * @memberof CommitAffectedFiles
     */
    filename?: string;
    /**
     *
     * @type {string}
     * @memberof CommitAffectedFiles
     */
    status?: string;
}
/**
 * CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE
 * @export
 * @interface CommitDateOptions
 */
export interface CommitDateOptions {
    /**
     *
     * @type {string}
     * @memberof CommitDateOptions
     */
    author?: string;
    /**
     *
     * @type {string}
     * @memberof CommitDateOptions
     */
    committer?: string;
}
/**
 *
 * @export
 * @interface CommitMeta
 */
export interface CommitMeta {
    /**
     *
     * @type {string}
     * @memberof CommitMeta
     */
    created?: string;
    /**
     *
     * @type {string}
     * @memberof CommitMeta
     */
    sha?: string;
    /**
     *
     * @type {string}
     * @memberof CommitMeta
     */
    url?: string;
}
/**
 * CommitStats is statistics for a RepoCommit
 * @export
 * @interface CommitStats
 */
export interface CommitStats {
    /**
     *
     * @type {number}
     * @memberof CommitStats
     */
    additions?: number;
    /**
     *
     * @type {number}
     * @memberof CommitStats
     */
    deletions?: number;
    /**
     *
     * @type {number}
     * @memberof CommitStats
     */
    total?: number;
}
/**
 * CommitStatus holds a single status of a single Commit
 * @export
 * @interface CommitStatus
 */
export interface CommitStatus {
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    context?: string;
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    created_at?: string;
    /**
     *
     * @type {User}
     * @memberof CommitStatus
     */
    creator?: User;
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    description?: string;
    /**
     *
     * @type {number}
     * @memberof CommitStatus
     */
    id?: number;
    /**
     * CommitStatusState holds the state of a CommitStatus It can be \"pending\", \"success\", \"error\" and \"failure\"
     * @type {string}
     * @memberof CommitStatus
     */
    status?: string;
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    target_url?: string;
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    updated_at?: string;
    /**
     *
     * @type {string}
     * @memberof CommitStatus
     */
    url?: string;
}
/**
 *
 * @export
 * @interface CommitUser
 */
export interface CommitUser {
    /**
     *
     * @type {string}
     * @memberof CommitUser
     */
    date?: string;
    /**
     *
     * @type {string}
     * @memberof CommitUser
     */
    email?: string;
    /**
     *
     * @type {string}
     * @memberof CommitUser
     */
    name?: string;
}
/**
 *
 * @export
 * @interface Compare
 */
export interface Compare {
    /**
     *
     * @type {Array<Commit>}
     * @memberof Compare
     */
    commits?: Array<Commit>;
    /**
     *
     * @type {Array<CommitAffectedFiles>}
     * @memberof Compare
     */
    files?: Array<CommitAffectedFiles>;
    /**
     *
     * @type {number}
     * @memberof Compare
     */
    total_commits?: number;
}
/**
 * ContentsResponse contains information about a repo\'s entry\'s (dir, file, symlink, submodule) metadata and content
 * @export
 * @interface ContentsResponse
 */
export interface ContentsResponse {
    /**
     *
     * @type {FileLinksResponse}
     * @memberof ContentsResponse
     */
    _links?: FileLinksResponse;
    /**
     * `content` is populated when `type` is `file`, otherwise null
     * @type {string}
     * @memberof ContentsResponse
     */
    content?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    download_url?: string;
    /**
     * `encoding` is populated when `type` is `file`, otherwise null
     * @type {string}
     * @memberof ContentsResponse
     */
    encoding?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    git_url?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    html_url?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    last_commit_sha?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    last_commit_when?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    path?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    sha?: string;
    /**
     *
     * @type {number}
     * @memberof ContentsResponse
     */
    size?: number;
    /**
     * `submodule_git_url` is populated when `type` is `submodule`, otherwise null
     * @type {string}
     * @memberof ContentsResponse
     */
    submodule_git_url?: string;
    /**
     * `target` is populated when `type` is `symlink`, otherwise null
     * @type {string}
     * @memberof ContentsResponse
     */
    target?: string;
    /**
     * `type` will be `file`, `dir`, `symlink`, or `submodule`
     * @type {string}
     * @memberof ContentsResponse
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof ContentsResponse
     */
    url?: string;
}
/**
 * CreateAccessTokenOption options when create access token
 * @export
 * @interface CreateAccessTokenOption
 */
export interface CreateAccessTokenOption {
    /**
     *
     * @type {string}
     * @memberof CreateAccessTokenOption
     */
    name: string;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateAccessTokenOption
     */
    scopes?: Array<string>;
}
/**
 * CreateBranchProtectionOption options for creating a branch protection
 * @export
 * @interface CreateBranchProtectionOption
 */
export interface CreateBranchProtectionOption {
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    apply_to_admins?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    approvals_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    approvals_whitelist_username?: Array<string>;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    block_on_official_review_requests?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    block_on_outdated_branch?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    block_on_rejected_reviews?: boolean;
    /**
     * Deprecated: true
     * @type {string}
     * @memberof CreateBranchProtectionOption
     */
    branch_name?: string;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    dismiss_stale_approvals?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    enable_approvals_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    enable_merge_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    enable_push?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    enable_push_whitelist?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    enable_status_check?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    ignore_stale_approvals?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    merge_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    merge_whitelist_usernames?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CreateBranchProtectionOption
     */
    protected_file_patterns?: string;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    push_whitelist_deploy_keys?: boolean;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    push_whitelist_teams?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    push_whitelist_usernames?: Array<string>;
    /**
     *
     * @type {boolean}
     * @memberof CreateBranchProtectionOption
     */
    require_signed_commits?: boolean;
    /**
     *
     * @type {number}
     * @memberof CreateBranchProtectionOption
     */
    required_approvals?: number;
    /**
     *
     * @type {string}
     * @memberof CreateBranchProtectionOption
     */
    rule_name?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateBranchProtectionOption
     */
    status_check_contexts?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CreateBranchProtectionOption
     */
    unprotected_file_patterns?: string;
}
/**
 * CreateBranchRepoOption options when creating a branch in a repository
 * @export
 * @interface CreateBranchRepoOption
 */
export interface CreateBranchRepoOption {
    /**
     * Name of the branch to create
     * @type {string}
     * @memberof CreateBranchRepoOption
     */
    new_branch_name: string;
    /**
     * Deprecated: true Name of the old branch to create from
     * @type {string}
     * @memberof CreateBranchRepoOption
     */
    old_branch_name?: string;
    /**
     * Name of the old branch/tag/commit to create from
     * @type {string}
     * @memberof CreateBranchRepoOption
     */
    old_ref_name?: string;
}
/**
 * CreateEmailOption options when creating email addresses
 * @export
 * @interface CreateEmailOption
 */
export interface CreateEmailOption {
    /**
     * email addresses to add
     * @type {Array<string>}
     * @memberof CreateEmailOption
     */
    emails?: Array<string>;
}
/**
 * CreateFileOptions options for creating files Note: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)
 * @export
 * @interface CreateFileOptions
 */
export interface CreateFileOptions {
    /**
     *
     * @type {Identity}
     * @memberof CreateFileOptions
     */
    author?: Identity;
    /**
     * branch (optional) to base this file from. if not given, the default branch is used
     * @type {string}
     * @memberof CreateFileOptions
     */
    branch?: string;
    /**
     *
     * @type {Identity}
     * @memberof CreateFileOptions
     */
    committer?: Identity;
    /**
     * content must be base64 encoded
     * @type {string}
     * @memberof CreateFileOptions
     */
    content: string;
    /**
     *
     * @type {CommitDateOptions}
     * @memberof CreateFileOptions
     */
    dates?: CommitDateOptions;
    /**
     * message (optional) for the commit of this file. if not supplied, a default message will be used
     * @type {string}
     * @memberof CreateFileOptions
     */
    message?: string;
    /**
     * new_branch (optional) will make a new branch from `branch` before creating the file
     * @type {string}
     * @memberof CreateFileOptions
     */
    new_branch?: string;
    /**
     * Add a Signed-off-by trailer by the committer at the end of the commit log message.
     * @type {boolean}
     * @memberof CreateFileOptions
     */
    signoff?: boolean;
}
/**
 * CreateForkOption options for creating a fork
 * @export
 * @interface CreateForkOption
 */
export interface CreateForkOption {
    /**
     * name of the forked repository
     * @type {string}
     * @memberof CreateForkOption
     */
    name?: string;
    /**
     * organization name, if forking into an organization
     * @type {string}
     * @memberof CreateForkOption
     */
    organization?: string;
}
/**
 * CreateGPGKeyOption options create user GPG key
 * @export
 * @interface CreateGPGKeyOption
 */
export interface CreateGPGKeyOption {
    /**
     * An armored GPG key to add
     * @type {string}
     * @memberof CreateGPGKeyOption
     */
    armored_public_key: string;
    /**
     *
     * @type {string}
     * @memberof CreateGPGKeyOption
     */
    armored_signature?: string;
}
/**
 * CreateHookOption options when create a hook
 * @export
 * @interface CreateHookOption
 */
export interface CreateHookOption {
    /**
     *
     * @type {boolean}
     * @memberof CreateHookOption
     */
    active?: boolean;
    /**
     *
     * @type {string}
     * @memberof CreateHookOption
     */
    authorization_header?: string;
    /**
     *
     * @type {string}
     * @memberof CreateHookOption
     */
    branch_filter?: string;
    /**
     * CreateHookOptionConfig has all config options in it required are \"content_type\" and \"url\" Required
     * @type {{ [key: string]: string; }}
     * @memberof CreateHookOption
     */
    config: {
        [key: string]: string;
    };
    /**
     *
     * @type {Array<string>}
     * @memberof CreateHookOption
     */
    events?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CreateHookOption
     */
    type: CreateHookOptionTypeEnum;
}
export declare const CreateHookOptionTypeEnum: {
    readonly Forgejo: "forgejo";
    readonly Dingtalk: "dingtalk";
    readonly Discord: "discord";
    readonly Gitea: "gitea";
    readonly Gogs: "gogs";
    readonly Msteams: "msteams";
    readonly Slack: "slack";
    readonly Telegram: "telegram";
    readonly Feishu: "feishu";
    readonly Wechatwork: "wechatwork";
    readonly Packagist: "packagist";
};
export type CreateHookOptionTypeEnum = (typeof CreateHookOptionTypeEnum)[keyof typeof CreateHookOptionTypeEnum];
/**
 * CreateIssueCommentOption options for creating a comment on an issue
 * @export
 * @interface CreateIssueCommentOption
 */
export interface CreateIssueCommentOption {
    /**
     *
     * @type {string}
     * @memberof CreateIssueCommentOption
     */
    body: string;
    /**
     *
     * @type {string}
     * @memberof CreateIssueCommentOption
     */
    updated_at?: string;
}
/**
 * CreateIssueOption options to create one issue
 * @export
 * @interface CreateIssueOption
 */
export interface CreateIssueOption {
    /**
     * deprecated
     * @type {string}
     * @memberof CreateIssueOption
     */
    assignee?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateIssueOption
     */
    assignees?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CreateIssueOption
     */
    body?: string;
    /**
     *
     * @type {boolean}
     * @memberof CreateIssueOption
     */
    closed?: boolean;
    /**
     *
     * @type {string}
     * @memberof CreateIssueOption
     */
    due_date?: string;
    /**
     * list of label ids
     * @type {Array<number>}
     * @memberof CreateIssueOption
     */
    labels?: Array<number>;
    /**
     * milestone id
     * @type {number}
     * @memberof CreateIssueOption
     */
    milestone?: number;
    /**
     *
     * @type {string}
     * @memberof CreateIssueOption
     */
    ref?: string;
    /**
     *
     * @type {string}
     * @memberof CreateIssueOption
     */
    title: string;
}
/**
 * CreateKeyOption options when creating a key
 * @export
 * @interface CreateKeyOption
 */
export interface CreateKeyOption {
    /**
     * An armored SSH key to add
     * @type {string}
     * @memberof CreateKeyOption
     */
    key: string;
    /**
     * Describe if the key has only read access or read/write
     * @type {boolean}
     * @memberof CreateKeyOption
     */
    read_only?: boolean;
    /**
     * Title of the key to add
     * @type {string}
     * @memberof CreateKeyOption
     */
    title: string;
}
/**
 * CreateLabelOption options for creating a label
 * @export
 * @interface CreateLabelOption
 */
export interface CreateLabelOption {
    /**
     *
     * @type {string}
     * @memberof CreateLabelOption
     */
    color: string;
    /**
     *
     * @type {string}
     * @memberof CreateLabelOption
     */
    description?: string;
    /**
     *
     * @type {boolean}
     * @memberof CreateLabelOption
     */
    exclusive?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CreateLabelOption
     */
    is_archived?: boolean;
    /**
     *
     * @type {string}
     * @memberof CreateLabelOption
     */
    name: string;
}
/**
 * CreateMilestoneOption options for creating a milestone
 * @export
 * @interface CreateMilestoneOption
 */
export interface CreateMilestoneOption {
    /**
     *
     * @type {string}
     * @memberof CreateMilestoneOption
     */
    description?: string;
    /**
     *
     * @type {string}
     * @memberof CreateMilestoneOption
     */
    due_on?: string;
    /**
     *
     * @type {string}
     * @memberof CreateMilestoneOption
     */
    state?: CreateMilestoneOptionStateEnum;
    /**
     *
     * @type {string}
     * @memberof CreateMilestoneOption
     */
    title?: string;
}
export declare const CreateMilestoneOptionStateEnum: {
    readonly Open: "open";
    readonly Closed: "closed";
};
export type CreateMilestoneOptionStateEnum = (typeof CreateMilestoneOptionStateEnum)[keyof typeof CreateMilestoneOptionStateEnum];
/**
 * CreateOAuth2ApplicationOptions holds options to create an oauth2 application
 * @export
 * @interface CreateOAuth2ApplicationOptions
 */
export interface CreateOAuth2ApplicationOptions {
    /**
     *
     * @type {boolean}
     * @memberof CreateOAuth2ApplicationOptions
     */
    confidential_client?: boolean;
    /**
     *
     * @type {string}
     * @memberof CreateOAuth2ApplicationOptions
     */
    name?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof CreateOAuth2ApplicationOptions
     */
    redirect_uris?: Array<string>;
}
/**
 * CreateOrUpdateSecretOption options when creating or updating secret
 * @export
 * @interface CreateOrUpdateSecretOption
 */
export interface CreateOrUpdateSecretOption {
    /**
     * Data of the secret to update
     * @type {string}
     * @memberof CreateOrUpdateSecretOption
     */
    data: string;
}
/**
 * CreateOrgOption options for creating an organization
 * @export
 * @interface CreateOrgOption
 */
export interface CreateOrgOption {
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    description?: string;
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    email?: string;
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    full_name?: string;
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    location?: string;
    /**
     *
     * @type {boolean}
     * @memberof CreateOrgOption
     */
    repo_admin_change_team_access?: boolean;
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    username: string;
    /**
     * possible values are `public` (default), `limited` or `private`
     * @type {string}
     * @memberof CreateOrgOption
     */
    visibility?: CreateOrgOptionVisibilityEnum;
    /**
     *
     * @type {string}
     * @memberof CreateOrgOption
     */
    website?: string;
}
export declare const CreateOrgOptionVisibilityEnum: {
    readonly Public: "public";
    readonly Limited: "limited";
    readonly Private: "private";
};
export type CreateOrgOptionVisibilityEnum = (typeof CreateOrgOptionVisibilityEnum)[keyof typeof CreateOrgOptionVisibilityEnum];
/**
 * CreatePullRequestOption options when creating a pull request
 * @export
 * @interface CreatePullRequestOption
 */
export interface CreatePullRequestOption {
    /**
     *
     * @type {string}
     * @memberof CreatePullRequestOption
     */
    assignee?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof CreatePullRequestOption
     */
    assignees?: Array<string>;
    /**
     *
     * @type {string}
     * @memberof CreatePullRequestOption
     */
    base?: string;
    /**
     *
     * @type {string}
     * @memberof CreatePullRequestOption
     */
    body?: string;
    /**
     *
     * @type {string}
     * @memberof CreatePullRequestOption
     */
    due_date?: string;
    /**
     *
     * @type {string}
     * @memberof CreatePullRequestOption
     */
    head?: string;
    /**
     *
     * @type {Array<number>}
     * @memberof CreatePullRequestOption
     */
    labels?: Array<number>;
    /**
     *
     * @type {number}
     * @memberof CreatePullRequestOpt