## API Report File for "@backstage/plugin-cloudbuild"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts
/// <reference types="react" />

import { ApiRef } from '@backstage/core-plugin-api';
import { BackstagePlugin } from '@backstage/core-plugin-api';
import { Entity } from '@backstage/catalog-model';
import { OAuthApi } from '@backstage/core-plugin-api';
import { RouteRef } from '@backstage/core-plugin-api';

// Warning: (ae-missing-release-tag) "ActionsGetWorkflowResponseData" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type ActionsGetWorkflowResponseData = {
  id: string;
  status: string;
  source: Source;
  createTime: string;
  startTime: string;
  steps: Step[];
  timeout: string;
  projectId: string;
  logsBucket: string;
  sourceProvenance: SourceProvenance;
  buildTriggerId: string;
  options: Options;
  logUrl: string;
  substitutions: Substitutions;
  tags: string[];
  queueTtl: string;
  name: string;
  finishTime: any;
  results: Results;
  timing: Timing2;
};

// Warning: (ae-missing-release-tag) "ActionsListWorkflowRunsForRepoResponseData" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface ActionsListWorkflowRunsForRepoResponseData {
  // (undocumented)
  builds: ActionsGetWorkflowResponseData[];
}

// Warning: (ae-missing-release-tag) "BUILD" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface BUILD {
  // (undocumented)
  endTime: string;
  // (undocumented)
  startTime: string;
}

// Warning: (ae-missing-release-tag) "CLOUDBUILD_ANNOTATION" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const CLOUDBUILD_ANNOTATION = 'google.com/cloudbuild-project-slug';

// Warning: (ae-missing-release-tag) "CloudbuildApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type CloudbuildApi = {
  listWorkflowRuns: (request: {
    projectId: string;
  }) => Promise<ActionsListWorkflowRunsForRepoResponseData>;
  getWorkflow: ({
    projectId,
    id,
  }: {
    projectId: string;
    id: string;
  }) => Promise<ActionsGetWorkflowResponseData>;
  getWorkflowRun: ({
    projectId,
    id,
  }: {
    projectId: string;
    id: string;
  }) => Promise<ActionsGetWorkflowResponseData>;
  reRunWorkflow: ({
    projectId,
    runId,
  }: {
    projectId: string;
    runId: string;
  }) => Promise<any>;
};

// Warning: (ae-missing-release-tag) "cloudbuildApiRef" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const cloudbuildApiRef: ApiRef<CloudbuildApi>;

// Warning: (ae-missing-release-tag) "CloudbuildClient" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export class CloudbuildClient implements CloudbuildApi {
  constructor(googleAuthApi: OAuthApi);
  // (undocumented)
  getToken(): Promise<string>;
  // (undocumented)
  getWorkflow({
    projectId,
    id,
  }: {
    projectId: string;
    id: string;
  }): Promise<ActionsGetWorkflowResponseData>;
  // (undocumented)
  getWorkflowRun({
    projectId,
    id,
  }: {
    projectId: string;
    id: string;
  }): Promise<ActionsGetWorkflowResponseData>;
  // (undocumented)
  listWorkflowRuns({
    projectId,
  }: {
    projectId: string;
  }): Promise<ActionsListWorkflowRunsForRepoResponseData>;
  // (undocumented)
  reRunWorkflow({
    projectId,
    runId,
  }: {
    projectId: string;
    runId: string;
  }): Promise<void>;
}

// Warning: (ae-missing-release-tag) "cloudbuildPlugin" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
const cloudbuildPlugin: BackstagePlugin<
  {
    entityContent: RouteRef<undefined>;
  },
  {}
>;
export { cloudbuildPlugin };
export { cloudbuildPlugin as plugin };

// Warning: (ae-missing-release-tag) "EntityCloudbuildContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const EntityCloudbuildContent: (_props: {
  entity?: Entity | undefined;
}) => JSX.Element;

// Warning: (ae-missing-release-tag) "EntityLatestCloudbuildRunCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const EntityLatestCloudbuildRunCard: ({
  branch,
}: {
  entity?: Entity | undefined;
  branch: string;
}) => JSX.Element;

// Warning: (ae-missing-release-tag) "EntityLatestCloudbuildsForBranchCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const EntityLatestCloudbuildsForBranchCard: ({
  branch,
}: {
  entity?: Entity | undefined;
  branch: string;
}) => JSX.Element;

// Warning: (ae-missing-release-tag) "FETCHSOURCE" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface FETCHSOURCE {
  // (undocumented)
  endTime: string;
  // (undocumented)
  startTime: string;
}

// Warning: (ae-missing-release-tag) "isCloudbuildAvailable" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
const isCloudbuildAvailable: (entity: Entity) => boolean;
export { isCloudbuildAvailable };
export { isCloudbuildAvailable as isPluginApplicableToEntity };

// Warning: (ae-missing-release-tag) "LatestWorkflowRunCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const LatestWorkflowRunCard: ({
  branch,
}: {
  entity?: Entity | undefined;
  branch: string;
}) => JSX.Element;

// Warning: (ae-missing-release-tag) "LatestWorkflowsForBranchCard" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const LatestWorkflowsForBranchCard: ({
  branch,
}: {
  entity?: Entity | undefined;
  branch: string;
}) => JSX.Element;

// Warning: (ae-missing-release-tag) "Options" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Options {
  // (undocumented)
  dynamicSubstitutions: boolean;
  // (undocumented)
  logging: string;
  // (undocumented)
  machineType: string;
  // (undocumented)
  substitutionOption: string;
}

// Warning: (ae-missing-release-tag) "PullTiming" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface PullTiming {
  // (undocumented)
  endTime: string;
  // (undocumented)
  startTime: string;
}

// Warning: (ae-missing-release-tag) "ResolvedStorageSource" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface ResolvedStorageSource {
  // (undocumented)
  bucket: string;
  // (undocumented)
  generation: string;
  // (undocumented)
  object: string;
}

// Warning: (ae-missing-release-tag) "Results" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Results {
  // (undocumented)
  buildStepImages: string[];
  // (undocumented)
  buildStepOutputs: string[];
}

// Warning: (ae-forgotten-export) The symbol "Props" needs to be exported by the entry point index.d.ts
// Warning: (ae-missing-release-tag) "Router" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export const Router: (_props: Props) => JSX.Element;

// Warning: (ae-missing-release-tag) "Source" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Source {
  // (undocumented)
  storageSource: StorageSource;
}

// Warning: (ae-missing-release-tag) "SourceProvenance" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface SourceProvenance {
  // (undocumented)
  fileHashes: {};
  // (undocumented)
  resolvedStorageSource: {};
}

// Warning: (ae-missing-release-tag) "Step" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Step {
  // (undocumented)
  args: string[];
  // (undocumented)
  dir: string;
  // (undocumented)
  entrypoint: string;
  // (undocumented)
  id: string;
  // (undocumented)
  name: string;
  // (undocumented)
  pullTiming: PullTiming;
  // (undocumented)
  status: string;
  // (undocumented)
  timing: Timing;
  // (undocumented)
  volumes: Volume[];
  // (undocumented)
  waitFor: string[];
}

// Warning: (ae-missing-release-tag) "StorageSource" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface StorageSource {
  // (undocumented)
  bucket: string;
  // (undocumented)
  object: string;
}

// Warning: (ae-missing-release-tag) "Substitutions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Substitutions {
  // (undocumented)
  BRANCH_NAME: string;
  // (undocumented)
  COMMIT_SHA: string;
  // (undocumented)
  REPO_NAME: string;
  // (undocumented)
  REVISION_ID: string;
  // (undocumented)
  SHORT_SHA: string;
}

// Warning: (ae-missing-release-tag) "Timing" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Timing {
  // (undocumented)
  endTime: string;
  // (undocumented)
  startTime: string;
}

// Warning: (ae-missing-release-tag) "Timing2" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Timing2 {
  // (undocumented)
  BUILD: BUILD;
  // (undocumented)
  FETCHSOURCE: FETCHSOURCE;
}

// Warning: (ae-missing-release-tag) "Volume" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface Volume {
  // (undocumented)
  name: string;
  // (undocumented)
  path: string;
}
```
