import { Address, Bytes, Property } from '@cryptoeconomicslab/primitives'; export interface IPropertyFilter { match: (property: Property) => boolean; } export default class PropertyFilter { readonly address: Address; readonly inputs: Array; readonly child?: PropertyFilter | undefined; readonly children?: (PropertyFilter | undefined)[] | undefined; constructor(address: Address, inputs: Array, child?: PropertyFilter | undefined, children?: (PropertyFilter | undefined)[] | undefined); private matchInputs; private matchChild; private matchChildren; match(property: Property): boolean; }