import { CuneiformCommand } from '../../../base/cuneiform-command.js'; import type { FieldInfo, ObjectResult, ObjectSummary, FieldSummary, RelationshipInfo, ProfilingStatusInfo, ObjectDescribeTotals, ObjectDescribeCommandResult } from '../../../models/object-describe-types.js'; export type { FieldInfo, ObjectResult, ObjectSummary, FieldSummary, RelationshipInfo, ProfilingStatusInfo, ObjectDescribeTotals, ObjectDescribeCommandResult, }; /** * Describes Salesforce objects with comprehensive metadata and field analysis. * * Use this command to: * - Understand object structure before creating profiling definitions * - Analyze field inventory by type and namespace * - Review record types and their configurations * - Identify how many other objects reference this object * - Assess record age distribution * - Check existing profiling definitions * * @example * ```bash * # Describe Account object * sf cuneiform object describe --object Account * * # Describe multiple objects * sf cuneiform object describe --object Account,Contact,Opportunity * * # Include field listing * sf cuneiform object describe --object Account --with-fields * * # Filter to lookup fields, sorted by type * sf cuneiform object describe --object Account --with-fields --field-type lookup --sort type * ``` */ export default class ObjectDescribe extends CuneiformCommand { static readonly summary: string; static readonly description: string; static readonly examples: string[]; static readonly flags: { 'target-org': import("@oclif/core/interfaces").OptionFlag; 'api-version': import("@oclif/core/interfaces").OptionFlag; object: import("@oclif/core/interfaces").OptionFlag; 'with-fields': import("@oclif/core/interfaces").BooleanFlag; 'field-type': import("@oclif/core/interfaces").OptionFlag; 'field-pattern': import("@oclif/core/interfaces").OptionFlag; sort: import("@oclif/core/interfaces").OptionFlag; }; /** * Computes aggregate totals across all described objects. */ private static computeTotals; /** * Executes the object describe command. * * @returns ObjectDescribeCommandResult with object metadata */ run(): Promise; /** * Enriches business processes with per-process record age distributions. */ private enrichBusinessProcesses; /** * Describes an object and formats the result. */ private describeAndFormat; }