123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291 |
- import type {Scope, TimeseriesValue} from './core';
- import type {SDKUpdatesSuggestion} from './event';
- import type {Plugin} from './integrations';
- import type {Organization, Team} from './organization';
- import type {Deploy} from './release';
- import type {DynamicSamplingBias} from './sampling';
- // Minimal project representation for use with avatars.
- export type AvatarProject = {
- slug: string;
- id?: string | number;
- platform?: PlatformKey;
- };
- export type Project = {
- access: Scope[];
- allowedDomains: string[];
- dateCreated: string;
- digestsMaxDelay: number;
- digestsMinDelay: number;
- dynamicSamplingBiases: DynamicSamplingBias[] | null;
- environments: string[];
- eventProcessing: {
- symbolicationDegraded: boolean;
- };
- features: string[];
- firstEvent: string | null;
- firstTransactionEvent: boolean;
- groupingAutoUpdate: boolean;
- groupingConfig: string;
- hasAccess: boolean;
- hasCustomMetrics: boolean;
- hasFeedbacks: boolean;
- hasMinifiedStackTrace: boolean;
- hasMonitors: boolean;
- hasNewFeedbacks: boolean;
- hasProfiles: boolean;
- hasReplays: boolean;
- hasSessions: boolean;
- id: string;
- isBookmarked: boolean;
- isInternal: boolean;
- isMember: boolean;
- name: string;
- organization: Organization;
- plugins: Plugin[];
- processingIssues: number;
- relayCustomMetricCardinalityLimit: number | null;
- relayPiiConfig: string;
- resolveAge: number;
- safeFields: string[];
- scrapeJavaScript: boolean;
- scrubIPAddresses: boolean;
- sensitiveFields: string[];
- subjectTemplate: string;
- team: Team;
- teams: Team[];
- verifySSL: boolean;
- builtinSymbolSources?: string[];
- defaultEnvironment?: string;
- hasUserReports?: boolean;
- highlightContext?: Record<string, string[]>;
- highlightPreset?: {
- context: Record<string, string[]>;
- tags: string[];
- };
- highlightTags?: string[];
- latestDeploys?: Record<string, Pick<Deploy, 'dateFinished' | 'version'>> | null;
- latestRelease?: {version: string} | null;
- options?: Record<string, boolean | string>;
- securityToken?: string;
- securityTokenHeader?: string;
- sessionStats?: {
- currentCrashFreeRate: number | null;
- hasHealthData: boolean;
- previousCrashFreeRate: number | null;
- };
- stats?: TimeseriesValue[];
- subjectPrefix?: string;
- symbolSources?: string;
- transactionStats?: TimeseriesValue[];
- } & AvatarProject;
- export type MinimalProject = Pick<Project, 'id' | 'slug' | 'platform'>;
- // Response from project_keys endpoints.
- export type ProjectKey = {
- browserSdk: {
- choices: [key: string, value: string][];
- };
- browserSdkVersion: ProjectKey['browserSdk']['choices'][number][0];
- dateCreated: string;
- dsn: {
- cdn: string;
- crons: string;
- csp: string;
- minidump: string;
- public: string;
- secret: string;
- security: string;
- unreal: string;
- };
- dynamicSdkLoaderOptions: {
- hasDebug: boolean;
- hasPerformance: boolean;
- hasReplay: boolean;
- };
- id: string;
- isActive: boolean;
- label: string;
- name: string;
- projectId: number;
- public: string;
- rateLimit: {
- count: number;
- window: number;
- } | null;
- secret: string;
- useCase?: string;
- };
- export type ProjectSdkUpdates = {
- projectId: string;
- sdkName: string;
- sdkVersion: string;
- suggestions: SDKUpdatesSuggestion[];
- };
- export type Environment = {
- displayName: string;
- id: string;
- name: string;
- // XXX: Provided by the backend but unused due to `getUrlRoutingName()`
- // urlRoutingName: string;
- };
- export interface TeamWithProjects extends Team {
- projects: Project[];
- }
- /**
- * The type of all platform keys.
- * Also includes platforms that cannot be created in the UI anymore.
- */
- export type PlatformKey =
- | 'android'
- | 'apple'
- | 'apple-ios'
- | 'apple-macos'
- | 'bun'
- | 'c'
- | 'capacitor'
- | 'cfml'
- | 'cocoa'
- | 'cocoa-objc'
- | 'cocoa-swift'
- | 'cordova'
- | 'csharp'
- | 'csharp-aspnetcore'
- | 'dart'
- | 'dart-flutter'
- | 'deno'
- | 'django'
- | 'dotnet'
- | 'dotnet-aspnet'
- | 'dotnet-aspnetcore'
- | 'dotnet-awslambda'
- | 'dotnet-gcpfunctions'
- | 'dotnet-google-cloud-functions'
- | 'dotnet-maui'
- | 'dotnet-uwp'
- | 'dotnet-winforms'
- | 'dotnet-wpf'
- | 'dotnet-xamarin'
- | 'electron'
- | 'elixir'
- | 'flutter'
- | 'go'
- | 'go-echo'
- | 'go-fasthttp'
- | 'go-gin'
- | 'go-http'
- | 'go-iris'
- | 'go-martini'
- | 'go-negroni'
- | 'groovy'
- | 'ionic'
- | 'java'
- | 'java-android'
- | 'java-appengine'
- | 'java-log4j'
- | 'java-log4j2'
- | 'java-logback'
- | 'java-logging'
- | 'java-spring'
- | 'java-spring-boot'
- | 'javascript'
- | 'javascript-angular'
- | 'javascript-angularjs'
- | 'javascript-astro'
- | 'javascript-backbone'
- | 'javascript-browser'
- | 'javascript-capacitor'
- | 'javascript-cordova'
- | 'javascript-electron'
- | 'javascript-ember'
- | 'javascript-gatsby'
- | 'javascript-nextjs'
- | 'javascript-react'
- | 'javascript-remix'
- | 'javascript-svelte'
- | 'javascript-sveltekit'
- | 'javascript-vue'
- | 'kotlin'
- | 'minidump'
- | 'native'
- | 'native-crashpad'
- | 'native-breakpad'
- | 'native-minidump'
- | 'native-qt'
- | 'nintendo-switch'
- | 'node'
- | 'node-awslambda'
- | 'node-azurefunctions'
- | 'node-connect'
- | 'node-express'
- | 'node-fastify'
- | 'node-gcpfunctions'
- | 'node-hapi'
- | 'node-koa'
- | 'node-nestjs'
- | 'node-nodeawslambda'
- | 'node-nodegcpfunctions'
- | 'objc'
- | 'other'
- | 'perl'
- | 'php'
- | 'PHP'
- | 'php-laravel'
- | 'php-monolog'
- | 'php-symfony'
- | 'php-symfony2'
- | 'python'
- | 'python-aiohttp'
- | 'python-asgi'
- | 'python-awslambda'
- | 'python-azurefunctions'
- | 'python-bottle'
- | 'python-celery'
- | 'python-chalice'
- | 'python-django'
- | 'python-falcon'
- | 'python-fastapi'
- | 'python-flask'
- | 'python-gcpfunctions'
- | 'python-pylons'
- | 'python-pymongo'
- | 'python-pyramid'
- | 'python-pythonawslambda'
- | 'python-pythonazurefunctions'
- | 'python-pythongcpfunctions'
- | 'python-pythonserverless'
- | 'python-quart'
- | 'python-rq'
- | 'python-sanic'
- | 'python-serverless'
- | 'python-starlette'
- | 'python-tornado'
- | 'python-tryton'
- | 'python-wsgi'
- | 'rails'
- | 'react'
- | 'react-native'
- | 'ruby'
- | 'ruby-rack'
- | 'ruby-rails'
- | 'rust'
- | 'swift'
- | 'switt'
- | 'unity'
- | 'unreal';
- export type PlatformIntegration = {
- id: PlatformKey;
- language: string;
- link: string | null;
- name: string;
- type: string;
- };
|