import { BaseSopOperation } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { InputCloneMode } from '../../../engine/poly/InputCloneMode';
import { DefaultOperationParams } from '../../../core/operations/_Base';
interface MaterialPropertiesSopParams extends DefaultOperationParams {
    group: string;
    tside: boolean;
    doubleSided: boolean;
    front: boolean;
    overrideShadowSide: boolean;
    shadowDoubleSided: boolean;
    shadowFront: boolean;
    twireframe: boolean;
    wireframe: boolean;
}
export declare class MaterialPropertiesSopOperation extends BaseSopOperation {
    static readonly DEFAULT_PARAMS: MaterialPropertiesSopParams;
    static readonly INPUT_CLONED_STATE = InputCloneMode.FROM_NODE;
    static type(): Readonly<'materialProperties'>;
    cook(inputCoreGroups: CoreGroup[], params: MaterialPropertiesSopParams): CoreGroup;
    private _updateObject;
    private _updateMaterial;
}
export {};
