UNPKG

@roadiehq/backstage-plugin-travis-ci

Version:
116 lines (110 loc) 3.4 kB
import * as react_jsx_runtime from 'react/jsx-runtime'; import * as _backstage_core_plugin_api from '@backstage/core-plugin-api'; import { DiscoveryApi, IdentityApi } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; import { FC } from 'react'; declare const travisciPlugin: _backstage_core_plugin_api.BackstagePlugin<{ entityContent: _backstage_core_plugin_api.RouteRef<undefined>; }, {}, {}>; declare const EntityTravisCIContent: () => react_jsx_runtime.JSX.Element; declare const EntityTravisCIOverviewCard: () => react_jsx_runtime.JSX.Element; type TravisCIBuildResponse = { '@type': string; '@href': string; '@representation': string; '@permissions': { read: boolean; cancel: boolean; restart: boolean; }; id: number; number: string; state: string; duration: number; event_type: string; previous_state: string; pull_request_title?: string; pull_request_number?: number; started_at: string; finished_at: string; private: boolean; repository: { '@type': string; '@href': string; '@representation': string; id: number; name: string; slug: string; }; branch: { '@type': string; '@href': string; '@representation': string; name: string; }; tag?: any; commit: { '@type': string; '@representation': string; id: number; sha: string; ref: string; message: string; compare_url: string; committed_at: string; }; jobs: [ { '@type': string; '@href': string; '@representation': string; id: number; } ]; stages: any[]; created_by: { '@type': string; '@href': string; '@representation': string; id: number; login: string; }; updated_at: string; }; type FetchParams = { limit: number; offset: number; repoSlug: string; }; interface TravisCIApi { retry(buildNumber: number): Promise<Response>; getBuilds(options: { limit: number; offset: number; repoSlug: string; }): Promise<any>; getUser(): any; getBuild(buildId: number): Promise<TravisCIBuildResponse>; } declare const travisCIApiRef: _backstage_core_plugin_api.ApiRef<TravisCIApi>; declare class TravisCIApiClient implements TravisCIApi { baseUrl: string; discoveryApi: DiscoveryApi; identityApi: IdentityApi; constructor(options: { discoveryApi: DiscoveryApi; identityApi: IdentityApi; }); retry(buildNumber: number): Promise<Response>; getBuilds({ limit, offset, repoSlug }: FetchParams): Promise<any>; getUser(): Promise<any>; getBuild(buildId: number): Promise<TravisCIBuildResponse>; private getApiUrl; } declare const isTravisciAvailable: (entity: Entity) => boolean; declare const Router: () => react_jsx_runtime.JSX.Element; type Props = { entity: Entity; }; declare const RecentTravisCIBuildsWidget: FC<Props>; export { EntityTravisCIContent, EntityTravisCIOverviewCard, RecentTravisCIBuildsWidget, Router, type TravisCIApi, TravisCIApiClient, type TravisCIBuildResponse, isTravisciAvailable as isPluginApplicableToEntity, isTravisciAvailable, travisciPlugin as plugin, travisCIApiRef, travisciPlugin };