/**
 * All available Echelon operation types
 */
export type OperationType = 'approve_node' | 'chain_update_create' | 'fund_request_contrib' | 'fund_request_create' | 'fund_request_work' | 'fund_request_work_review' | 'md_queue' | 'md_sign' | 'proposal_edit' | 'proposal_vote' | 'disapprove_node' | 'enable_node' | 'create_market' | 'place_order' | 'create_collection' | 'transfer_nft' | 'create_pool' | 'stake' | 'unstake' | 'create_token' | 'mint_token' | 'transfer_token' | 'update_token' | 'transfer' | 'user_json';
/**
 * Field type definitions for operations
 */
export type FieldType = 'string' | 'number' | 'boolean' | 'json' | 'array';
/**
 * Definition of a field in an operation
 */
export interface FieldDefinition {
    type: FieldType;
    required: boolean;
}
/**
 * Complete operation definition
 */
export interface OperationDefinition {
    type: OperationType;
    requiredAuth: 'posting' | 'active' | 'master';
    fields: {
        [key: string]: FieldDefinition;
    };
}
/**
 * Default value function for field types
 */
export declare function getDefaultValueForType(type: FieldType): any;
/**
 * All supported operations with their definitions
 */
export declare const operations: OperationDefinition[];
/**
 * Get operation definition by type
 */
export declare function getOperationByType(type: OperationType): OperationDefinition | undefined;
/**
 * Create an empty operation object with default values
 */
export declare function createEmptyOperation(type: OperationType): Record<string, any>;
/**
 * Create a properly formatted operation with authentication fields
 */
export declare function createFormattedOperation(type: OperationType, data: Record<string, any>, username: string): Record<string, any>;
