sec-edgar-toolkit
Version:
Open source toolkit to facilitate working with the SEC EDGAR database
81 lines • 2.45 kB
TypeScript
/**
* XBRL instance class providing comprehensive financial data analysis
*/
import { Filing } from '../edgar';
import { EdgarClient } from '../client/edgar-client';
import { XbrlFact, XbrlCompanyFacts, XbrlQueryOptions, FinancialStatement, BalanceSheet, IncomeStatement, CashFlowStatement } from '../types/xbrl';
export declare class XBRLInstance {
private _api;
private filing;
readonly cik: string;
private _facts;
private _usGaapFacts;
private _deiFacts;
constructor(filing: Filing, api?: EdgarClient);
/**
* Get all XBRL facts for the company
*/
getFacts(): Promise<XbrlCompanyFacts>;
/**
* Get US-GAAP facts
*/
getUsGaap(): Promise<Record<string, any>>;
/**
* Get DEI (Document Entity Information) facts
*/
getDei(): Promise<Record<string, any>>;
/**
* Query XBRL facts with filtering
*/
query(options?: XbrlQueryOptions): Promise<XbrlFact[]>;
/**
* Process concept data and apply filters
*/
private processConceptData;
/**
* Find and extract a specific financial statement
*/
findStatement(statementType: string, period?: string): Promise<FinancialStatement | null>;
/**
* Extract balance sheet data
*/
private extractBalanceSheet;
/**
* Extract income statement data
*/
private extractIncomeStatement;
/**
* Extract cash flow statement data
*/
private extractCashFlowStatement;
/**
* Get structured balance sheet
*/
getBalanceSheet(period?: string): Promise<BalanceSheet>;
/**
* Get structured income statement
*/
getIncomeStatement(period?: string): Promise<IncomeStatement>;
/**
* Get structured cash flow statement
*/
getCashFlowStatement(period?: string): Promise<CashFlowStatement>;
/**
* Get a single value for a specific concept
*/
getConceptValue(concept: string, taxonomy?: string, unit?: string, period?: string): Promise<number | null>;
/**
* Get all facts for a specific concept
*/
getFactsByConcept(concept: string, taxonomy?: string): Promise<XbrlFact[]>;
/**
* List all available concepts in a taxonomy
*/
listConcepts(taxonomy?: string): Promise<string[]>;
/**
* Convert XBRL data to plain object
*/
toObject(options?: XbrlQueryOptions): Promise<any>;
toString(): string;
}
//# sourceMappingURL=xbrl.d.ts.map