UNPKG

@typecad/typecad

Version:

🤖programmatically 💥create 🛰️hardware

60 lines (59 loc) 1.75 kB
import { Component } from "./component"; import { Pin } from "./pin"; import { UUID } from "node:crypto"; export declare function printTypecadOutputSummary(boardFilePath?: string): boolean; export type BomField = 'Reference' | 'Value' | 'Datasheet' | 'Footprint' | 'MPN' | 'Description' | 'Voltage' | 'Wattage'; export interface ISchematicOptions { net_prefix: string; bom_fields: BomField[]; bom_separator: string; } export interface INetConnectionInfo { reference: string; pin: number | string; type: string; } export interface ISchematicNetDefinition { name: string; code: number; pins: Pin[]; connections: INetConnectionInfo[]; } export declare class Schematic { #private; Components: Component[]; Sheetname: string; uuid: UUID; private sxexp_components; private sxexp_nets; private code_counter; Nodes: { name: string; code: number; nodes: Pin[]; owner: Component | null; }[]; merged_nets: { old_name: string; merged_to_number: number; }[]; private _chained_name; get option(): ISchematicOptions; private _storeNetParams; private _buildNetDefinition; bom(output_folder?: string): false | undefined; constructor(Sheetname: string); add(...components: Component[]): void; dnc(...pins: Pin[]): void; named(name: string): this; net(...pins: Pin[]): ISchematicNetDefinition; private make_sexp_net; create(...component: Component[]): false | undefined; erc(): void; error(error: string): void; warn(warning: string): void; private getComponentIcon; private formatComponentDisplay; private buildProjectTree; private displayGroupHierarchy; }