@enactprotocol/security
Version:
Backend security library for signing enact documents
28 lines (27 loc) • 971 B
TypeScript
export interface FieldConfig {
name: string;
required: boolean;
securityCritical: boolean;
description?: string;
}
export interface SigningFieldOptions {
includeFields?: string[];
excludeFields?: string[];
additionalCriticalFields?: string[];
customFieldConfig?: FieldConfig[];
}
export declare const ENACT_DEFAULT_CRITICAL_FIELDS: FieldConfig[];
export declare const GENERIC_DEFAULT_FIELDS: FieldConfig[];
export declare class FieldSelector {
private fieldConfigs;
constructor(fieldConfigs?: FieldConfig[]);
createCanonicalObject(document: Record<string, any>, options?: SigningFieldOptions): Record<string, any>;
private validateRequiredFields;
private isEmpty;
private isNonEmpty;
getFieldConfig(): FieldConfig[];
getSecurityCriticalFields(): string[];
getRequiredFields(): string[];
}
export declare const EnactFieldSelector: FieldSelector;
export declare const GenericFieldSelector: FieldSelector;