@gohcltech/bitbucket-mcp
Version:
Bitbucket integration for Claude via Model Context Protocol
119 lines • 4.3 kB
TypeScript
/**
* @fileoverview TypeScript types for Bitbucket workspace operations.
*
* This module contains TypeScript interfaces that correspond to workspace-related
* entities returned by the Bitbucket API v2.0. Workspaces in Bitbucket represent
* organizations or teams that contain multiple repositories and users.
*
* These types are used throughout the MCP server for:
* - Parsing Bitbucket API responses
* - Ensuring type safety in workspace operations
* - Providing IntelliSense support for workspace data
* - Validating workspace-related data structures
*/
/**
* Bitbucket workspace entity representing an organization or team.
*
* A workspace is the highest-level container in Bitbucket that groups
* repositories, users, and projects under a single organization. Each
* workspace has its own settings, permissions, and billing configuration.
*
* @example
* ```typescript
* const workspace: Workspace = {
* uuid: "{a1b2c3d4-e5f6-7890-abcd-ef1234567890}",
* name: "Health Care Logistics",
* slug: "gohcl",
* is_private: true,
* created_on: "2020-01-15T10:30:00.000Z",
* updated_on: "2024-03-20T14:22:33.456Z",
* links: {
* html: {
* href: "https://bitbucket.org/gohcl"
* },
* avatar: {
* href: "https://secure.gravatar.com/avatar/..."
* }
* }
* };
* ```
*/
export interface Workspace {
/**
* Unique UUID identifier for the workspace.
*
* This is the immutable identifier assigned by Bitbucket when the workspace
* is created. It remains constant even if the workspace name or slug changes.
* Format: {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
*/
uuid: string;
/**
* Human-readable display name for the workspace.
*
* This is the full name shown in the Bitbucket UI and can contain spaces,
* special characters, and Unicode characters. It can be changed by workspace
* administrators without affecting the workspace's functionality.
*/
name: string;
/**
* URL-safe workspace identifier used in API calls and URLs.
*
* The slug is a lowercase, URL-safe version of the workspace name that
* appears in Bitbucket URLs (e.g., bitbucket.org/workspace-slug).
* Contains only alphanumeric characters, hyphens, and underscores.
*/
slug: string;
/**
* Indicates whether the workspace has restricted visibility.
*
* When true, the workspace and its repositories are only visible to
* authenticated users who are members of the workspace. When false,
* the workspace profile is publicly visible (though individual
* repositories may still be private).
*/
is_private: boolean;
/**
* ISO 8601 timestamp indicating when the workspace was created.
*
* This timestamp is set when the workspace is first created and never
* changes. Useful for sorting workspaces by age or determining billing
* anniversary dates.
*/
created_on: string;
/**
* ISO 8601 timestamp indicating when the workspace was last modified.
*
* This timestamp is updated whenever workspace settings, permissions,
* or metadata are changed. Does not reflect changes to repositories
* within the workspace.
*/
updated_on: string;
/**
* Collection of related URLs and resources for the workspace.
*
* Provides quick access to workspace-related web pages and assets.
* The html link always points to the workspace's main page, while
* the avatar link may be absent if no avatar is configured.
*/
links: {
/**
* Direct link to the workspace's main page in the Bitbucket web interface.
*/
html: {
/** Full URL to the workspace page (e.g., https://bitbucket.org/workspace-slug) */
href: string;
};
/**
* Optional link to the workspace's avatar image.
*
* If the workspace has a custom avatar configured, this provides
* the direct URL to the image file. May be undefined if using
* the default avatar or no avatar is set.
*/
avatar?: {
/** Full URL to the avatar image file */
href: string;
};
};
}
//# sourceMappingURL=types.d.ts.map