SYMBOL INDEX (127 symbols across 22 files) FILE: src/config.ts type Source (line 6) | type Source = "cli" | "env" | "default"; type Resolved (line 8) | interface Resolved { type ServerConfig (line 13) | interface ServerConfig { function resolve (line 25) | function resolve(flag: T | undefined, env: T | undefined, fallback: T... function envStr (line 31) | function envStr(name: string): string | undefined { function envInt (line 35) | function envInt(...names: string[]): number | undefined { function envBool (line 43) | function envBool(name: string): boolean | undefined { function maskApiKey (line 50) | function maskApiKey(key: string): string { function getServerConfig (line 55) | function getServerConfig(): ServerConfig { FILE: src/extractors/built-in.ts function findOrCreateVar (line 24) | function findOrCreateVar(globalVars: GlobalVars, value: StyleTypes, pref... function getStyleName (line 162) | function getStyleName( constant SVG_ELIGIBLE_TYPES (line 213) | const SVG_ELIGIBLE_TYPES = new Set([ function collapseSvgContainers (line 233) | function collapseSvgContainers( function hasImageFillInChildren (line 261) | function hasImageFillInChildren(node: FigmaDocumentNode): boolean { FILE: src/extractors/design-extractor.ts function simplifyRawFigmaObject (line 17) | function simplifyRawFigmaObject( function parseAPIResponse (line 48) | function parseAPIResponse(data: GetFileResponse | GetFileNodesResponse) { FILE: src/extractors/node-walker.ts function extractFromDesign (line 21) | function extractFromDesign( function processNodeWithExtractors (line 46) | function processNodeWithExtractors( function shouldProcessNode (line 102) | function shouldProcessNode(node: FigmaDocumentNode, options: TraversalOp... function shouldTraverseChildren (line 119) | function shouldTraverseChildren( FILE: src/extractors/types.ts type StyleTypes (line 12) | type StyleTypes = type GlobalVars (line 20) | type GlobalVars = { type TraversalContext (line 24) | interface TraversalContext { type TraversalOptions (line 30) | interface TraversalOptions { type ExtractorFn (line 56) | type ExtractorFn = ( type SimplifiedDesign (line 62) | interface SimplifiedDesign { type SimplifiedNode (line 70) | interface SimplifiedNode { type BoundingBox (line 97) | interface BoundingBox { FILE: src/mcp/index.ts type CreateServerOptions (line 18) | type CreateServerOptions = { function createServer (line 25) | function createServer( function registerTools (line 43) | function registerTools( FILE: src/mcp/tools/download-figma-images-tool.ts type DownloadImagesParams (line 82) | type DownloadImagesParams = z.infer; function downloadFigmaImages (line 85) | async function downloadFigmaImages( function getDescription (line 222) | function getDescription(imageDir?: string) { FILE: src/mcp/tools/get-figma-data-tool.ts type GetFigmaDataParams (line 38) | type GetFigmaDataParams = z.infer; function getFigmaData (line 41) | async function getFigmaData( FILE: src/server.ts type Session (line 15) | type Session = { function startServer (line 24) | async function startServer(): Promise { function startHttpServer (line 52) | async function startHttpServer( function stopHttpServer (line 207) | async function stopHttpServer(): Promise { FILE: src/services/figma.ts type FigmaAuthOptions (line 12) | type FigmaAuthOptions = { type SvgOptions (line 18) | type SvgOptions = { class FigmaService (line 24) | class FigmaService { method constructor (line 30) | constructor({ figmaApiKey, figmaOAuthToken, useOAuth }: FigmaAuthOptio... method getAuthHeaders (line 36) | private getAuthHeaders(): Record { method filterValidImages (line 49) | private filterValidImages( method request (line 59) | private async request(endpoint: string): Promise { method buildSvgQueryParams (line 78) | private buildSvgQueryParams(svgIds: string[], svgOptions: SvgOptions):... method getImageFillUrls (line 94) | async getImageFillUrls(fileKey: string): Promise = {}) { function makeChild (line 16) | function makeChild(overrides: Record = {}) { FILE: src/transformers/component.ts type ComponentProperties (line 3) | interface ComponentProperties { type SimplifiedComponentDefinition (line 9) | interface SimplifiedComponentDefinition { type SimplifiedComponentSetDefinition (line 16) | interface SimplifiedComponentSetDefinition { function simplifyComponents (line 26) | function simplifyComponents( function simplifyComponentSets (line 45) | function simplifyComponentSets( FILE: src/transformers/effects.ts type SimplifiedEffects (line 10) | type SimplifiedEffects = { function buildSimplifiedEffects (line 17) | function buildSimplifiedEffects(n: FigmaDocumentNode): SimplifiedEffects { function simplifyDropShadow (line 60) | function simplifyDropShadow(effect: DropShadowEffect) { function simplifyInnerShadow (line 64) | function simplifyInnerShadow(effect: InnerShadowEffect) { function simplifyBlur (line 68) | function simplifyBlur(effect: BlurEffect) { FILE: src/transformers/layout.ts type SimplifiedLayout (line 9) | interface SimplifiedLayout { function buildSimplifiedLayout (line 35) | function buildSimplifiedLayout( function convertJustifyContent (line 45) | function convertJustifyContent(align?: HasFramePropertiesTrait["primaryA... function convertAlignItems (line 60) | function convertAlignItems( function convertSelfAlign (line 90) | function convertSelfAlign(align?: HasLayoutTrait["layoutAlign"]) { function convertSizing (line 107) | function convertSizing( function buildSimplifiedFrameValues (line 116) | function buildSimplifiedFrameValues(n: FigmaDocumentNode): SimplifiedLay... function buildSimplifiedLayoutValues (line 163) | function buildSimplifiedLayoutValues( FILE: src/transformers/style.ts type CSSRGBAColor (line 11) | type CSSRGBAColor = `rgba(${number}, ${number}, ${number}, ${number})`; type CSSHexColor (line 12) | type CSSHexColor = `#${string}`; type ColorValue (line 13) | interface ColorValue { type SimplifiedImageFill (line 27) | type SimplifiedImageFill = { type SimplifiedGradientFill (line 78) | type SimplifiedGradientFill = { type SimplifiedPatternFill (line 83) | type SimplifiedPatternFill = { type SimplifiedFill (line 101) | type SimplifiedFill = type SimplifiedStroke (line 108) | type SimplifiedStroke = { function translateScaleMode (line 123) | function translateScaleMode( function generateTransformHash (line 188) | function generateTransformHash(transform: Transform): string { function handleImageTransform (line 212) | function handleImageTransform( function buildSimplifiedStrokes (line 231) | function buildSimplifiedStrokes( function parsePaint (line 261) | function parsePaint(raw: Paint, hasChildren: boolean = false): Simplifie... function parsePatternPaint (line 336) | function parsePatternPaint( function hexToRgba (line 391) | function hexToRgba(hex: string, opacity: number = 1): string { function convertColor (line 418) | function convertColor(color: RGBA, opacity = 1): ColorValue { function formatRGBAColor (line 439) | function formatRGBAColor(color: RGBA, opacity = 1): CSSRGBAColor { function mapGradientStops (line 452) | function mapGradientStops( function mapLinearGradient (line 500) | function mapLinearGradient( function findExtendedLineIntersections (line 570) | function findExtendedLineIntersections(start: Vector, end: Vector): numb... function mapRadialGradient (line 628) | function mapRadialGradient( function mapAngularGradient (line 654) | function mapAngularGradient( function mapDiamondGradient (line 683) | function mapDiamondGradient( function convertGradientToCss (line 709) | function convertGradientToCss( FILE: src/transformers/text.ts type SimplifiedTextStyle (line 4) | type SimplifiedTextStyle = Partial<{ function isTextNode (line 15) | function isTextNode( function hasTextStyle (line 21) | function hasTextStyle( function extractNodeText (line 29) | function extractNodeText(n: FigmaDocumentNode) { function extractTextStyle (line 35) | function extractTextStyle(n: FigmaDocumentNode) { FILE: src/utils/common.ts type StyleId (line 4) | type StyleId = `${string}_${string}` & { __brand: "StyleId" }; function downloadFigmaImage (line 14) | async function downloadFigmaImage( function removeEmptyKeys (line 93) | function removeEmptyKeys(input: T): T { function generateVarId (line 136) | function generateVarId(prefix: string = "var"): StyleId { function generateCSSShorthand (line 163) | function generateCSSShorthand( function isVisible (line 205) | function isVisible(element: { visible?: boolean }): boolean { function pixelRound (line 215) | function pixelRound(num: number): number { FILE: src/utils/fetch-with-retry.ts type RequestOptions (line 7) | type RequestOptions = RequestInit & { function fetchWithRetry (line 16) | async function fetchWithRetry( function formatHeadersForCurl (line 90) | function formatHeadersForCurl(headers: Record | undefine... FILE: src/utils/identity.ts function hasValue (line 12) | function hasValue( function isFrame (line 23) | function isFrame(val: unknown): val is HasFramePropertiesTrait { function isLayout (line 32) | function isLayout(val: unknown): val is HasLayoutTrait { function isInAutoLayoutFlow (line 55) | function isInAutoLayoutFlow(node: unknown, parent: unknown): boolean { function isStrokeWeights (line 65) | function isStrokeWeights(val: unknown): val is StrokeWeights { function isRectangle (line 76) | function isRectangle( function isRectangleCornerRadii (line 94) | function isRectangleCornerRadii(val: unknown): val is number[] { function isCSSColorValue (line 98) | function isCSSColorValue(val: unknown): val is CSSRGBAColor | CSSHexColor { FILE: src/utils/image-processing.ts function applyCropTransform (line 10) | async function applyCropTransform( function getImageDimensions (line 64) | async function getImageDimensions(imagePath: string): Promise<{ type ImageProcessingResult (line 72) | type ImageProcessingResult = { function downloadAndProcessImage (line 92) | async function downloadAndProcessImage( function generateImageCSSVariables (line 185) | function generateImageCSSVariables({ FILE: src/utils/logger.ts function writeLogs (line 20) | function writeLogs(name: string, value: any): void {